有时在NSDate中获得一小时的差异

我正在使用IOS 6和IOS 5.我在一个小时的时间里获得了不同。 而我使用的date格式为@"MMM d, yyyy HH:mm aaa" 。 我也试过了@"MMM d, yyyy h:mm aaa"

实际上,我正在为当前的本地设置通知的固定时间。 时间固定为上午10点在不同的date。 它正在控制台上正确显示date,但时间与澳大利亚时区不同,显示为"2012-10-02 14:00:00 +0000 or 2012-10-02 13:00:00 +0000"

当我将date格式更改为@"MMM d, yyyy h:mm aaa" ,显示"2012-10-02 00:00:00 +0000 or 2012-10-02 23:00:00 +0000"

请build议。

使用date格式化程序时,应指定日历和时区以正确的格式返回date。

我发现join以下两行有助于缓解这个问题。 (你看我在那里做了什么?)

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