در برنامه نویسی اندروید روش صحیح برای نمایش متن ها و کلمات تعریف آنها در فایل `XML` و استفاده از آنها در مکان های دیگر است. این متن ها درون فایل `/res/values/strings.xml` نوشته می شوند. کد زیر نمونه ای از این فایل است.

``` Format Strings Yo! ```

متن های تعریف شده در مثال بالا را می توان براحتی در هر مکان مورد نیاز استفاده کرد. همچنین این متن ها همواره ثابت هستند و تغییر نمی کنند. حال فرض کنید می خواهید نوشته ای داشته باشید که تعداد وقایع ثبت شده در یک روز را نمایش دهد، `"برای امروز '3' رویداد ثبت شده است."`. عدد ۳ که در متن نوشته شده مشخص شده است برای روزهای مختلف میتواند متفاوت باشد، یعنی اگر امروز ۳ رویداد داشته باشیم ممکنه فردا یک رویداد داشته باشیم.

سیستم مدیریت متن ها در اندروید به شکلی است که این امکان را نیز به شما می دهد تا بتوانید رشته هایی دارای فرمت خاص تعریف کنید و سپس در مواقع نیاز با در دست داشتن مقادیر لازم رشته نهایی را بسازید، تنها می بایست به این نکته دقت داشته باشید که در صورتی که می خواهید از رشته های فرمت بندی شده استفاده کنید می باست از آنها درون کد های جاوا استفاده کنید و نه فایل های `xml`.

تعریف رشته های فرمت دار

برای تعریف یک متغییر درون رشته های تعریف شده در فایل `/res/values/strings.xml` می توان از فرمت `%{id}$s` یا `%{id}$d` استفاده کرد که در آنها `{id}` مشخص کننده اندیس متغییر ورودی است و `$s` و `$d` مشخص کننده رشته بودن یا عدد بودن وردی است. برای نمونه `%1$d` متغییر اول از نوع عددی است.

``` %1$d Events and %2$d Notes ```

نحوه ی استفاده از رشته های فرمت دار

برای استفاده از رشته های فرمت بندی شده درون یک کلاس پس از گرفتن رشته مورد نظر با استفادع از تابع `String.format()` می توان مقادیر لازم را جایگزین متغییر های تعریف شده در رشته کرد.

```

int events = 2, notes = 1;
String event_note = getResources().getString(R.string. notification_event_note);
String message = String.format(event_note, events, notes);

<p>پس از اجرای این کد متغییر `message` حاوی مقدار `2 Events and 1 Notes` خواهد بود.</p>