PDA

View Full Version : سوال: صفر پشت تاریخ های تک رقمه



h_floppy
شنبه 05 اردیبهشت 1388, 21:47 عصر
چطوری می تونم صفر پشت روز و ماه رو بزارم در صورتی که ماه یا روز یک رقمی باشه متدی وجود داره یا دستی باید این کار رو انجام داد(راه پیشنهادیتون چیه؟) بغییر از این متد که من استفاده می کنم متد دیگه ای هست
TextBox1.Text = pc.GetDayOfMonth(dt).ToString();

Reza_Yarahmadi
شنبه 05 اردیبهشت 1388, 22:50 عصر
یک راه ساده و مبتدیانه اینه!!


TextBox1.Text = "0" + pc.GetDayOfMonth(dt).ToString();


میشه کل تاریخ رو به رشته تبدیل کنی و شرط بذاری که اگه 1 رقمی بود یه صفر بهش اضافه کنه!!!!

seven7777777
شنبه 05 اردیبهشت 1388, 23:01 عصر
منظورت وقتی که تاریخ رو از ورودی می گیری یا وقتی که نشون می دی ؟
من بهت پیشنهاد می کنم از سه تا ComboBox استفاده کن یکی برای روز یکی ماه و یکی سال . اینطوری اگه بخوای تاریخ رو رشته کنی هم خیلی کارت راحته .
بعد وقتی داری عناصر ComboBox رو مینویسی یه صفر قبل تک رقمی ها بذار . این جوری کاربر الزاما تاریخ رو به فرمت درست انتخاب می کنه .

robini
شنبه 05 اردیبهشت 1388, 23:30 عصر
كار مشكلی نيست ، ميتونی اينكار رو انجام بدی :


DateTime _date;
_date = DateTime.Now;
PersianCalendar pc = new PersianCalendar();
string Day = pc.GetDayOfMonth(_date).ToString("00");
string Mount = pc.GetMonth(_date).ToString("00");
string Year = pc.GetYear(_date).ToString("0000");

البته چون ديدم از pc استفاده كردی منم تاريخ فارسی گذاشتم:چشمک:

linux
یک شنبه 06 اردیبهشت 1388, 12:21 عصر
string.Format("{0:0000}/{1:00}/{2:00}", yy, mm, dd);

Chabok
دوشنبه 07 اردیبهشت 1388, 12:07 عصر
با سلام
برای تکمیل تاپیک :

تابع PadLeft , Padright در رشته ها نیز همین امکان رو فراهم میکنند .

Label1.Text = "88".PadLeft(4, '0');

پارامتر اول طول رشته نهایی را گرفته و اگر طول رشته کمتر از آن بود کارکتری که در پارامتر دوم مشخص می شود به راست یا چپ آن افزوده می شود تا طول رشته نهایی حاصل شود .

موفق باشید .