PDA

View Full Version : مشکل با تاریخ شمسی



programerinfonet
چهارشنبه 02 مرداد 1392, 12:28 عصر
سلام دوستان
من از کامپوننت زیر تو برنامم استفاده می کنم واسه دریافت تاریخ شمسی
اما مقدار پیش فرض رو تاریخ 2 ماه قبل نشون میده . کد زیر رو نوشتم که تاریخ رو "1392/5/2" نشون میده که من میخوام به شکل "1392/05/02" نشون بده


System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
Dt_Ac_Date.Value = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);



107831

veniz2008
چهارشنبه 02 مرداد 1392, 12:41 عصر
سلام.

DateTime today = DateTime.Today;

PersianCalendar pc = new PersianCalendar();

string date = pc.GetYear(today).ToString("0000") + pc.GetMonth(today).ToString("/00") + pc.GetDayOfMonth(today).ToString("/00");

MessageBox.Show(date);

tooraj_azizi_1035
چهارشنبه 02 مرداد 1392, 19:24 عصر
string.Format("{0}/{1:0#}/{2:0#}", Year, Month, Day);

davidrobert
چهارشنبه 02 مرداد 1392, 20:26 عصر
سلام دوستان
من از کامپوننت زیر تو برنامم استفاده می کنم واسه دریافت تاریخ شمسی
اما مقدار پیش فرض رو تاریخ 2 ماه قبل نشون میده . کد زیر رو نوشتم که تاریخ رو "1392/5/2" نشون میده که من میخوام به شکل "1392/05/02" نشون بده


System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
Dt_Ac_Date.Value = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);




برادر به تاریخ میلادی هم بستگی داره که تنظیم نباشه و اشتباه نشان بده و از طرفی تاریخ شمسی نیازی به کامپوننت نداره چون خود سی شارپ دستوریش رو داره برای تاریخ شمسی.
System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
string data = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);
lblFoc.Text = data;

veniz2008
چهارشنبه 02 مرداد 1392, 21:06 عصر
کد زیر رو نوشتم که تاریخ رو "1392/5/2" نشون میده که من میخوام به شکل "1392/05/02" نشون بده


System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
Dt_Ac_Date.Value = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);



107831


برادر به تاریخ میلادی هم بستگی داره که تنظیم نباشه و اشتباه نشان بده و از طرفی تاریخ شمسی نیازی به کامپوننت نداره چون خود سی شارپ دستوریش رو داره برای تاریخ شمسی.
System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
string data = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);
lblFoc.Text = data;
برادر شما حرف ایشون رو دقت نکردی. داره میگه که مثلا میخواد شماره ماه رو به جای 5 بصورت 05 نشون بده یا روز نهم رو به جای 9 بصورت 09 نشون بده. بحث بر سر فرمت یکسان برای تمامی تاریخ ها هست.
موفق باشید.

amir200h
چهارشنبه 02 مرداد 1392, 21:43 عصر
System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();
Dt_Ac_Date.Value = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now).ToString("D2") + "/" + pc.GetDayOfMonth(DateTime.Now).ToString("D2");

Enrigo
پنج شنبه 22 اسفند 1392, 11:26 صبح
با سلام خسته نباشید یه سوال داشتم اگه ممکنه راهنماییم کنین ممنون میشم

اونم اینکه چجوری نام تاریخ که مثلا به صورت 92/12/22 هست رو تو سی شارپ دربیارم؟ ( که پنج شنبه هست رو بیاره)

و هم اینکه تو SQL Server یه فیلد واسه تاریخ شمسی دارم که تاریخ ها اونجا ذخیره میشه میخواستم نام فارسی اون تاریخ ها هم تو یه فیلد(ستون) دیگه

نشون بده

پیشاپیش ممنون از راهنمایی هاتون