0

我知道这是一个时区问题,但我不知道如何解决。

我有一个NSDate = 2013-07-29 01:10:01 +0000

当我做一个NSDateComponent,天组件显示28

我现在在EST时区,但为什么它不直接显示29?这是一个错误吗?

如果没有,我该如何解决这个问题才能正确显示?还是已经合适了?

谢谢。

4

1 回答 1

3

问题是您的日历实例当前设置为您的时区,因此它将日期解释为比格林威治标准时间早 5 小时(这是您在问题中粘贴的内容)。

要解决此问题,您应该timeZone在用于使日期组件过期的日历上设置属性。假设您的日历变量名为calendar

calendar.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
于 2013-08-09T05:11:30.860 回答