C# 两个日期比较大小

发布时间 2023-12-14 12:09:35作者: lanrenka
 一、直接比较大小
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 的实例进行比较,并返回一个指示第一个实例是早于、等于还是晚于第二个实例的整数。