您的位置:首页 > 编程语言 > C#

C# winform 判断日期大小 比较日期大小

2015-10-26 11:42 513 查看

开始日期 dateTimePicker1为 2011-6-11
截止日期 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中两个时间进行比较时,要注意两个时间的精度。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: