قالب بندی رشته ها با تابع Format
با سلام.
در این قسمت از آموزش میخوام کار کردن با دستور Format و قالب بندی رشته ها رو توضیح بدم.
در بعضی مواقع ، شاید لازم باشه که نحوه نمایش رشته ها و کاراکترهای اون ها رو و طرز قرار گرفتنشون رو تغییر بدید. برای این کار از دستور فرمت استفاده میکنیم. حالت کلی دستور فرمت به شکل زیر هست :
کد PHP:
String.format(format, args);
که format در کد بالا نوع قالب بندی هست و args هم مقادیری که باید در قالب قرار بگیرند.
برای درک بیشتر ، به مثال زیر توجه کنید :
کد PHP:
double R_number = 37;
R_number /= 7;
MessageBox.Show("Result : " + R_number, "Test");
کد بالا عدد 5.28571428571429 رو نشون میده ولی همیشه ما این همه رقم و اعشار رو لازم نداریم . پس از دستور فرمت استفاده می کنیم که مثلاً تا 2 یا 3 رقم اعشار رو برای ما چاپ کنه :
کد PHP:
double R_number = 37;
R_number /= 7;
MessageBox.Show(string.Format("Result : {0:n2}", R_number), "Test 2");
MessageBox.Show(string.Format("Result : {0:n3}", R_number), "Test 3");
در کدهای بالا ، برای مشخص کردن مکان قالب ، از علامت {} استفاده می کنند. عدد صفر در بین این دو علامت ، مشخص کننده مکان پارامتری هست که در قسمت آرگومان ها وجود داره. به عبارت دیگه ، ایندکس قرار گرفتن پارامتر و آرگومان بعدش هست .
عبارت n2 یا n3 هم به معنی یک عدد اعشاری با 2 یا 3 رقم اعشار هست . این عدد رو میتونید برای استفاده های خودتون کم یا زیاد کنید !
مثلاً اگه بخواییم در کد بالا برای فرمت از دو یا چند قالب استفاده کنیم ، از دستور زیر استفاده می کنیم :
کد PHP:
double R_number = 37;
R_number /= 7;
MessageBox.Show(string.Format("Result with Two : {0:n2} And Result with Three : {1:n3}", R_number, R_number), "Test 4");
در کد بالا ، در قسمت Args ، ما 2 بار متغیر R_number رو قرار دادیم. چون در قسمت format ، ما 2 تا قالب داشتیم !
یک مثال دیگه از این دستور میزنیم . مثلاً ما میخواییم که دو تا متغیر اسم و فامیل رو از تکست باکس های فرممون دریافت کنیم و اون ها رو پشت سر هم نمایش بدیم .
برای این کار من اول بدون دستور فرمت کد رو می نویسم :
کد PHP:
string f_name = textBox1.Text;
string l_name = textBox2.Text;
MessageBox.Show("Your First Name is : "+ f_name + " And Your Last Name is : "+ l_name, "Test 5");
حالا به جای استفاده از اون همه + در کد ، از دستور فرمت استفاده میکنیم :
کد PHP:
string f_name = textBox1.Text;
string l_name = textBox2.Text;
MessageBox.Show(string.Format("Your First Name is : {0} And Your Last Name is : {1}", f_name, l_name), "Test 5");
استفاده از تابع فرمت ، در بسیاری از موارد باعث راحتی کار ما میشه !
یکی دیگه از کاربرد های فرمت ، دینامیک کردن نمایش عدد ها و رقم هاست. این یعنی اگه ما با استفاده از قالب بندی یک عدد رو نشون بدیم ، اگر برنامه ما در کشور های دیگه و یا نواحی خاصی اجرا بشه ، چون بر اساس تنظیمات زبان و منطقه جغرافیایی ویندوز هست ، اون هم بر اساس قالب بندی ویندوز تنظیم میشه.
موفق باشید.