2016-01-28 51 views
-3

使用C#測試是否可能在接下來的24小時內包含DateTime「01/29/2016 16:22:00」?我有一個日期是「2016年1月28日15:30」(DateTime.Now),我想知道它是否在24小時內的範圍內。我希望我解釋一下。檢查日期是否在未來24小時內與C#

+1

你想知道'DateTime.Now'是在接下來的24小時內? –

回答

2

您可以使用AddHours

var myDateTime = ... 
var now = DateTime.Now; 

if (myDateTime <= now.AddHours(24) 
    && myDateTime >= now.AddHours(-24)) 
{ 

} 

還銘記記住這DateTime是不可改變的,它們在創建之後進行修改。這就是爲什麼AddHours返回一個新的實例。

更新: 看到M.kazem的回答後,我有,雖然你也可以使用:

Math.Abs(myDateTime.Subtract(DateTime.Now).TotalHours) <= 24 
+0

爲我的情況你的答案正常工作!謝謝 –

+0

@ Mr.Developer很高興幫助。另外,更新了我的答案。你也可以使用第二個。 –

4
(yourDatetime - DateTime.Now) <= TimeSpan.FromHours(24) 
+0

如果你的時間是5年前? – jmoreno

+0

如果'yourDatetime = DateTime.Now.AddHours(-26)';它不會工作。你可以使用'Math.Abs​​'。 –

相關問題