如何测试两个日期时间是不是相同? [复制]
Posted
技术标签:
【中文标题】如何测试两个日期时间是不是相同? [复制]【英文标题】:How to test two dateTimes for being the same date? [duplicate]如何测试两个日期时间是否相同? [复制] 【发布时间】:2012-06-20 23:08:40 【问题描述】:可能重复:How to compare Dates in C#
我的这段代码:
public static string getLogFileNameForDate(DateTime dt)
if (dt.Equals(DateTime.Now))
...即使两个日期相同(日期)也会失败,因为 dt 在启动时被分配了一个值(例如“6/18/2012 15:19:42”),因此日期不完全是相同,即使年、月和日相同(DateTime.Now 的值可能是“6/18/2012 15:30:13”)。
我知道我可以这样测试:
if ((dt.Year.Equals(DateTime.Now.Year) && (dt.Month.Equals(DateTime.Now.Month) && (dt.Day.Equals(DateTime.Now.Day))
...但这似乎有点像 Jethro* 风格
什么是接受/首选的方法(没有双关语)?
Clampett,而不是 Tull【问题讨论】:
dt.Date.CompareTo(DateTime.Now.Date) == 0 应该可以解决问题。 哦,还有***.com/questions/683037/… @dash:看起来你需要神话般的“Seeing Double”徽章来为你不断发现的这些骗子。 我一直在问自己:“这些肯定不是原创问题” :-) 一方面,OP 得到的答案很好,但另一方面,用相同的内容填充网站答案... 【参考方案1】:试试
if (dt.Date == DateTime.Now.Date)
只取日期部分,时间戳为 12:00:00
【讨论】:
我想你也可以dt.date == DateTime.Today
以上是关于如何测试两个日期时间是不是相同? [复制]的主要内容,如果未能解决你的问题,请参考以下文章