日期比较 – 如何检查是否过了20分钟?
如何检查当前日期是否已过去20分钟?
例如:
var start = DateTime.Now; var oldDate = "08/10/2011 23:50:31"; if(start ??) { //20 minutes were passed from start }
什么是最好的方法呢? 谢谢 :)
- 您应该将开始时间转换为UTC时间,比如说“开始”。
-
您现在可以使用以下方法将开始时间与当前UTC时间进行比较:
start.AddMinutes(20) > DateTime.UtcNow
这种方法意味着您将获得有关夏令时变化的正确答案。
通过将时间添加到开始时间而不是减去和比较TimeSpan上的总时间,您可以使用更易读的语法并且可以处理更多日期差异情况,例如从开始的1个月,从开始的2个星期,…
var start = DateTime.Now; var oldDate = DateTime.Parse("08/10/2011 23:50:31"); if ((start - oldDate).TotalMinutes >= 20) { //20 minutes were passed from start }
将oldDate
解析为DateTime
对象( DateTime.Parse
)。
从start
减去解析日期。 这将返回TimeSpan
。
检查TotalMinutes
。
var start = DateTime.Now; var oldDate = DateTime.Parse("08/10/2011 23:50:31"); if(start.Subtract(oldDate) >= TimeSpan.FromMinutes(20)) { //20 minutes were passed from start }
我能够通过在我的项目中使用JodaTime库来实现这一目标。 我出来了这段代码。
String datetime1 = "2012/08/24 05:22:34"; String datetime2 = "2012/08/24 05:23:28"; DateTimeFormatter format = DateTimeFormat.forPattern("yyyy/MM/dd HH:mm:ss"); DateTime time1 = format.parseDateTime(datetime1); DateTime time2 = format.parseDateTime(datetime2); Minutes Interval = Minutes.minutesBetween(time1, time2); Minutes minInterval = Minutes.minutes(20); if(Interval.isGreaterThan(minInterval)){ return true; } else{ return false; }
这将检查datetime1和datetime2之间的时间间隔是否大于20分钟。 将属性更改为秒。 你知道这会更容易。 这将返回false。
上述就是C#学习教程:日期比较 – 如何检查是否过了20分钟?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
var end = DateTime.Parse(oldDate); if (start.Hour == end.Hour && start.AddMinutes(20).Minute >= end.Minute)
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1015657.html