0

آموزش جامع Visual C#.NET

 
siryahya
siryahya
کاربر طلایی1
تاریخ عضویت : اسفند 1389 
تعداد پست ها : 158652
محل سکونت : ▂▃▄▅▆▇█Tabriz█▇▆▅▄▃▂

پاسخ به: آموزش جامع Visual C#.NET
پنج شنبه 24 اردیبهشت 1394  3:35 PM

قالب بندی رشته ها با تابع 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");  
 
استفاده از تابع فرمت ، در بسیاری از موارد باعث راحتی کار ما میشه ! 
یکی دیگه از کاربرد های فرمت ، دینامیک کردن نمایش عدد ها و رقم هاست. این یعنی اگه ما با استفاده از قالب بندی یک عدد رو نشون بدیم ، اگر برنامه ما در کشور های دیگه و یا نواحی خاصی اجرا بشه ، چون بر اساس تنظیمات زبان و منطقه جغرافیایی ویندوز هست ، اون هم بر اساس قالب بندی ویندوز تنظیم میشه.
 
موفق باشید.

ترکی زبان قربون صدقه رفتنه داریم که: گوزلرین گیله‌سین قاداسین آلیم که یعنی درد و بلای مردمک چشات به جونم …!.

تشکرات از این پست
دسترسی سریع به انجمن ها