C# 两个日期比较大小
一、直接比较大小
string ed = "2023-12-13 09:27:59.000";//过去式 DateTime nowDateTime = DateTime.Now; DateTime expirationDate = Convert.ToDateTime(ed);//质保期 长日期 DateTime expirationDate1 = Convert.ToDateTime(Convert.ToDateTime(ed).ToString("yyyy-MM-dd"));//质保期 短日期 DateTime now = Convert.ToDateTime(nowDateTime.ToString("yyyy-MM-dd")); if (expirationDate1 < now)//短日期比较 { textBox2.Text = "短日期比较,过保了"; } if (expirationDate < nowDateTime)//长日期比较 { textBox3.Text = "长日期比较,过保了"; }
短日期比较,不需要对比时分秒。
二、工具类DateTime.Compare
格式:
int ints= DateTime.Compare(日期1, 日期2);
如果日期1=日期2,返回0;
如果日期1>日期2,返回1;
如果日期1<日期2,返回0;
string ed = "2023-12-13 09:27:59.000";//过去式 DateTime nowDateTime = DateTime.Now; DateTime expirationDate = Convert.ToDateTime(ed);//质保期 长日期 DateTime expirationDate1 = Convert.ToDateTime(Convert.ToDateTime(ed).ToString("yyyy-MM-dd"));//质保期 短日期 DateTime now = Convert.ToDateTime(nowDateTime.ToString("yyyy-MM-dd")); int ints= DateTime.Compare(expirationDate1, now);//短日期比较 int intl = DateTime.Compare(expirationDate, nowDateTime);//长日期比较
当调用compare方法比较两个时间大小时,传入的两个时间参数除了必属同一时区之外,还必须属于同一个精度范围。对两个 DateTime 的实例进行比较,并返回一个指示第一个实例是早于、等于还是晚于第二个实例的整数。