c#中的日期计算
本文关键字:计算 日期 | 更新日期: 2023-09-27 18:06:51
我有一个日期字符串,格式如下:
yyyy-mm-dd
。
2011-08-29
我想检查两个日期,看看date1是否小于date2。
伪代码:
string date1 = "2011-08-29";
string date2 = "2011-09-29";
if (date1 < date2) {
MessageBox.Show("First date is smaller!");
}
DateTime date1 = new DateTime(2009, 8, 1, 0, 0, 0);
DateTime date2 = new DateTime(2009, 8, 1, 12, 0, 0);
int result = DateTime.Compare(date1, date2);
string relationship;
if (result < 0)
relationship = "is earlier than";
else if (result == 0)
relationship = "is the same time as";
else
relationship = "is later than";
如果能够保证日期始终是相同的格式,那么一个字符串比较就足够了。
将两个字符串转换为DateTime变量并使用这里找到的DateTime.CompareTo
http://msdn.microsoft.com/en-us/library/5ata5aya.aspx
使用Convert.ToDateTime(date1)
进行转换
解可能看起来像
If (Convert.ToDateTime(date1).CompareTo(Convert.ToDateTime(date2)) < 0){
MessageBox.Show("First date is smaller!");
}
您可以通过解析该字符串创建DateTime
对象,然后继续执行该逻辑。例:
DateTime dateTime1 = DateTime.Parse(date1);
用于安全解析,DateTime.TryParse(date1, out dateTime1)
如果日期为YYYY-mm-dd
格式,则不需要解析。您的示例运行得非常好。