2016-03-01 30 views
1

之間的天,我計算的天2個日期之間的,一切都很好,除了三,四月間,數在Objective-C三月和四月

看到結果如下:

date1: 2015-03-31 21:00:00 +0000 
date2: 2015-03-28 22:00:00 +0000 
number of days: -3 

date1: 2015-03-31 21:00:00 +0000 
date2: 2015-03-29 22:00:00 +0000 
number of days: -1 


date1: 2015-03-31 21:00:00 +0000 
date2: 2015-03-30 22:00:00 +0000 
number of days: 0 


date1: 2015-03-31 21:00:00 +0000 
date2: 2015-03-31 22:00:00 +0000 
number of days: 0 

使用的代碼是:

components = [self.calendar components:NSCalendarUnitDay 
                 fromDate:date1 
                 toDate:date2 
options:NSCalendarWrapComponents]; 
+0

? – Shark

+0

什麼是夏令時?而不應該29日自動計算? – Hanane

+0

1.谷歌。我不知道,但也許事實並非如此。 – Shark

回答

0

設定日期的時間在中午12點,和它佔了夏令時和2月29日,這將解決這個問題

0

https://en.wikipedia.org/wiki/Daylight_saving_time_by_country有些國家由三月的最後一週啓動它。

顯然你是日曆對象知道夏令時,它實際上是計算你將時鐘向前移動的小時數。

這實際上工作正常,因爲24小時單位的天數計算正確。

+0

謝謝,那麼解決方案是什麼?我需要準確的天數 – Hanane

相關問題