2012-10-02 25 views
0

我正在使用IOS 6和IOS 5.我在一小時的時間內獲得了差異。而我使用的日期格式爲@"MMM d, yyyy HH:mm aaa"。我也試過@"MMM d, yyyy h:mm aaa"有時在NSDate中獲得一小時的差異

其實,我正在爲當前本地設置通知的固定時間。時間固定爲上午10:00不同日期。它正在控制檯上正確顯示日期,但時間與澳大利亞時區有所不同,因此顯示爲"2012-10-02 14:00:00 +0000 or 2012-10-02 13:00:00 +0000"

當我將日期格式更改爲@"MMM d, yyyy h:mm aaa"時,它顯示"2012-10-02 00:00:00 +0000 or 2012-10-02 23:00:00 +0000"

請推薦。

+0

夏令時?過去我一直這樣做,但不記得我做了什麼來解決它。 –

回答

2

使用日期格式化程序時,應指定日曆和時區以正確的格式返回日期。

我發現添加以下兩行有助於緩解過去的這個問題。 (你看我在那裏做了什麼?)

[formatter setCalendar:[NSCalendar currentCalendar]]; 
[formatter setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]]; 
+0

我正在使用[NSTimeZone localTimeZone]。 – Arvind