比方說,我有一個開始DateTime
對象包含2012/09/21 23:59:59和結束DateTime
對象包含2012/09/22 00:01:02。這兩個對象之間的差異稍微超過一分鐘,但屬於此日期範圍的天數等於2.多少天屬於一定範圍的日期?
我已閱讀其他類似問題,並且我認爲TimeSpan
和DateTime
類不會提供執行此類計算的方法。如何計算屬於某個日期範圍的天數?
比方說,我有一個開始DateTime
對象包含2012/09/21 23:59:59和結束DateTime
對象包含2012/09/22 00:01:02。這兩個對象之間的差異稍微超過一分鐘,但屬於此日期範圍的天數等於2.多少天屬於一定範圍的日期?
我已閱讀其他類似問題,並且我認爲TimeSpan
和DateTime
類不會提供執行此類計算的方法。如何計算屬於某個日期範圍的天數?
用途:
DateTime dateTime1 = DateTime.Parse("2012/09/21 23:59:59");
DateTime dateTime2 = DateTime.Parse("2012/09/22 00:01:02");
TimeSpan difference = dateTime1 - dateTime2;
變量difference
包含兩個日期之間的時間。例如,使用TotalDays屬性來獲取天數的差異。
如果你要排除的時間部分,使用Date財產上的日期時間,例如:
TimeSpan difference = dateTime1.Date - dateTime2.Date;
TotalDays將是1在這種情況下,而不是0
不
(dateTime2 - dateTime1).TotalDays
爲你工作?
你可以做到以下幾點:
System.DateTime dtTodayNoon = new System.DateTime(2006, 9, 13, 12, 0, 0);
System.DateTime dtTodayMidnight = new System.DateTime(2006, 9, 13, 0, 0, 0);
System.TimeSpan diffResult = dtTodayNoon.Subtract(dtYestMidnight);
Console.WriteLine("Yesterday Midnight - Today Noon = " + diffResult.Days);
Console.WriteLine("Yesterday Midnight - Today Noon = " + diffResult.TotalDays);
Console.ReadLine();
如果您希望包括夏令時:
System.TimeSpan diffResult = dtTodayNoon.ToUniversalTime().Subtract(dtYestMidnight.ToUniversalTime());
你可以使用DATETIMEOFFSET太多,如果時區是重要的
呀,你是對的!兩個'Date'屬性之間的區別:'int n =(int)((dateTime2.Date - dateTime1.Date).TotalDays)+ 1' – enzom83