آموزش کم کردن تاریخ شمسی از هم
سلام دوستان گرامی در این آموزش میخوام یکی از پر کاربرد ترن مثال های کار با تاریخ TimeSpan رو برای دوستاران برنامه نویسی قرار بدم شاید برای شما هم پیش امده باشه بخواهید چند روز رو از تاریخ شمسی کم یا زیاد کنید مشکل دارید یا اینکه بخواهید دو تاریخ شمسی رو از هم کنید.
در کد زیر شما میتوانید تاریخ شمسی را به شکل روز | ماه | سال (و در صورت نیاز (ساعت|دقیقه|ثانیه) را وارد کنید در خط دوم هم به ترتیب تعداد روزهایی که میخواهید کم شود که در کد زیر من یک روز قرار دادم و به ترتیب ساعت / دقیقه / ثانیه و در خط دوم توسط یک دستور و یک عملگر تفریق که میتونید جمع یا هر عملگری که مد نظرتون هست قرار دهید و در پایان نتیجه رو در یک MessageBox براتون نمایش دادم.
DateTime myDateTime = DateTime.Parse("01/20/1393"); TimeSpan myTimeSpan = new TimeSpan(1, 0,0,0); //day , hou,min,sec DateTime myDateTime8 = myDateTime - myTimeSpan; MessageBox.Show(myDateTime8.Year.ToString() + "/" + myDateTime8.Month.ToString() + "/" + myDateTime8.Day.ToString());
یا اگر دو رشته زمانی را میخواهید از هم کم کنید(یا درون Textbox):
DateTime first = DateTime.Parse(“1396/10/15”);
DateTime second = DateTime.Parse(“1396/11/17”);
TimeSpan ts = second – first;
MessageBox.Show(ts.TotalDays.ToString());
بدست آوردن اختلاف زمانی
همانطور که در مقدمه این آموزش نیز بیان شد، برای بدست آوردن اختلاف زمانی میان دو DateTime باید از کلاس TimeSpan کمک بگیریم. کافیست حاصل تفریق دو زمان مورد نظر را در شی ای از جنس کلاس TimeSpan قرار دهیم تا بتوانیم اختلاف میان آن دو را بدست آوریم. به نمونه کد زیر دقت کنید:
DateTime first = DateTime.Parse(“9/4/2014”);
DateTime second = DateTime.Parse(“10/4/2014”);
TimeSpan ts = second – first;
string msg = “اختلاف زمان بر حسب روز: ” + ts.TotalDays + “\n”;
msg += “اختلاف زمان بر حسب ساعت: ” + ts.TotalHours + “\n”;
msg += “اختلاف زمان بر حسب دقیقه: ” + ts.TotalMinutes + “\n”;
msg += “اختلاف زمان بر حسب ثانیه: ” + ts.Seconds + “\n”;
MessageBox.Show(msg);
خروجی کد بالا پیغامی را نمایش خواهد داد که اختلاف میان دو زمان first و second را بر حسب روز، ساعت، دقیقه و ثانیه بیان می کند.
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.