2013-02-22 108 views
2

我想比較一定的時間和當前的時間,以檢查它是否超過了給定的時間段。使用時間跨度來比較兩個時間間隔

我想我應該使用TimeSpan,但我不知道如何。即時比較的兩個日期是DateTime對象。

TimeSpan ts = TimeSpan.FromSeconds(_timeInterval); 

if(DateTime.UtcNow.Ticks - rex.LastFired.Ticks > ts.Ticks) 
    // bla bla 
+0

可能重複[C#比較時兩個時間間隔之間(http://stackoverflow.com/questions/10631044/c-sharp-compare-time-between-two-time-intervals) – 2013-02-24 22:13:01

+0

我不能看看爲什麼這不是一個真正的問題!曖昧,大小,不完整...等等?留下評論並尋求解釋,因爲這裏幾乎就是這種情況! – 2014-07-25 10:37:22

+0

看看這裏'TimeSpan.Compare方法(TimeSpan,TimeSpan)'https://msdn.microsoft.com/en-us/library/system.timespan.compare(v=vs.110).aspx – 2017-09-04 06:18:04

回答

2
if(DateTime.UtcNow - rex.LastFired > ts) 
    ... 
+0

我想你必須使用'rex.LastFired'(不含'.Ticks')。 – 2013-02-22 10:55:37

+0

@AlexFilipovici,是的,這就是我想要寫的......謝謝 – 2013-02-22 13:30:27

3

只需比較日期和時間之間的差異即可。

var start = new DateTime(2013, 02, 15); 
var now = DateTime.Now; 

var oneWeek = new TimeSpan(7, 0, 0, 0); 

if (now - start > oneWeek) { 
    Console.Write("One week is passed since start date."); 
} else { 
    Console.Write("One week not yet passed since start date."); 
}