C# winform 判斷日期大小 比較日期大小
截止日期 dateTimePicker2為 2011-6-12
如果截止日期大於開始日期,則彈出錯誤。
//////////////////////////////////////////////
DateTime time1 = Convert.ToDateTime(dateTimePicker1.Value.Date.ToString("yyyy-MM-dd"));
DateTime time2 = Convert.ToDateTime(dateTimePicker2.Value.Date.ToString("yyyy-MM-dd"));
if (DateTime.Compare(time1,time2)>=0) //判斷日期大小
{
messageBox.Show("dateTimePicker1的日期小於或等於dateTimePicker2的日期");
}
/////////////////////////////////////////////
注:時間比較的精度問題
如果當前時間為2008年7月1日1時5分4秒
Convert.ToDateTime("08/07/01").CompareTo(DateTime.Now) 此時返回的值為“-1”
結果:Convert.ToDateTime("08/07/01")所表示的時間小於DateTime.Now
原因
Convert.ToDateTime("08/07/01")所表示的時間為:2008-7-1 0:00:00
DateTime.Now所表示的時間為:2008-7-1 1:05:04
如果我們現在只要做到精確到“日”的時間比較,那麼就要把兩個時間統到同一精度。
方法
Convert.ToDateTime("08/07/01").CompareTo(Convert.ToDateTime(DateTime.Now.ToString("yy/MM/dd"))) 此時返回的值為“0”
結果:兩個時間相等
如果想只取小時分鐘 則格式設為"HH:mm"
結論
DateTime中兩個時間進行比較時,要注意兩個時間的精度。