string beginTime = "2024/03/15 14:30:00";
string endTime = "2024/03/15 16:00:00";
if (DateTime.Parse(beginTime) > DateTime.Parse(endTime))
{
Console.WriteLine("開始時間晚於結束時間,邏輯錯誤");
}
string fmt = "yyyy/MM/dd HH:mm:ss";
var culture = CultureInfo.InvariantCulture;
DateTime start = DateTime.ParseExact(beginTime, fmt, culture);
DateTime end = DateTime.ParseExact(endTime, fmt, culture);
if (start > end) { /* ... */ }
if (DateTime.TryParse(beginTime, out DateTime start) &&
DateTime.TryParse(endTime, out DateTime end))
{
if (start > end) { /* ... */ }
}
else
{
Console.WriteLine("日期格式錯誤");
}
public int CompareDateStrings(string date1, string date2, string format = null)
{
DateTime d1, d2;
bool ok = format == null
? DateTime.TryParse(date1, out d1) && DateTime.TryParse(date2, out d2)
: DateTime.TryParseExact(date1, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out d1) &&
DateTime.TryParseExact(date2, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out d2);
if (!ok) throw new ArgumentException("日期格式無法解析");
return d1.CompareTo(d2); // -1: d1d2
}
原文連結:https://www.bianceng.cn/Programming/csharp/201410/45575.htm