我正在試圖根據特定時區的日光狀態獲取DST偏移量。Pacific/Auckland和2014年1月14日的isDaylightSavingTimeOffsetForDate是否爲真?
我的問題是
[timeZone isDaylightSavingTimeForDate:date]
總是時區的 「奧克蘭/新西蘭」 及日期 「01-JAN-2014」 返回true。這應該是錯誤的,因爲奧克蘭的夏令時從四月開始,到九月結束。
我正在試圖根據特定時區的日光狀態獲取DST偏移量。Pacific/Auckland和2014年1月14日的isDaylightSavingTimeOffsetForDate是否爲真?
我的問題是
[timeZone isDaylightSavingTimeForDate:date]
總是時區的 「奧克蘭/新西蘭」 及日期 「01-JAN-2014」 返回true。這應該是錯誤的,因爲奧克蘭的夏令時從四月開始,到九月結束。
據http://www.timeanddate.com/worldclock/city.html?n=22, 夏令時始於9月和四月份在奧克蘭 (這是有道理的,因爲它是南半球)結束。
所以你的結果是正確的:「01-Jan-2014」是在夏季和夏令時 時間是活動的。
注意(大衛上述評論),正確的調用是
[timeZone isDaylightSavingTimeForDate:date]
哈哈!我查看了這些數據,並沒有意識到它列出了它先結束的月份,然後是月份後的月份。 –
Eeeee !!對不起,我的錯誤信息,但我的應用程序中有一個日曆。明尼阿波利斯的系統日曆和應用程序日曆根據DST進行匹配,但根據您所說的,我的系統日曆不會根據奧克蘭的DST顯示更改。 – user3202263
@ user3202263:對不起,我不明白。奧克蘭的夏令時從九月到四月,所以*一月份* *夏令時。 - 現在你的代碼使用'daylightSavingTimeOffsetForDate:'?那會在你的日期返回3600。你的意思是'isDaylightSavingTimeForDate:'? –
你可以告訴你正在使用的代碼(包括你如何得到的時區和日期)?還包括時區,日期和返回值的日誌輸出isDaylights ... –
順便說一句,我假設你的代碼應該使用'isDaylightSavingTimeForDate:'而不是'isDaylightSavingTimeZone:'(它不存在和看起來像一個錯字) –
夏令時數據存儲在iOS中。我不確定它是否會定期更新。考慮一個例子,在一個國家A夏令時從四月開始,到八月結束。如果A國政府決定將其從4月份更改爲6月份,則不會在iOS中更新。所以,如果您需要精確度和更新,請使用一些第三方API來確定夏令時。 http://www.timeanddate.com/worldclock/city.html?n=22 –