目标为iPhone的ISO 8601日期格式化程序没有正确设置偏移

时间:2012-03-07 15:41:18

标签: iphone objective-c ipad nsdateformatter iso8601

提前感谢您的帮助。

我正在尝试为我的iPhone应用程序创建一个ISO 8601日期格式化程序,我无法正确地获得偏移量。我需要结果时区是格林尼治标准时间,我位于美国东部时间,当我在2012年3月6日下午2:33测试时,我得到2012-03-06T14:33:35 + 0000

由于区域差异,我需要-05:00显示而不是+0000

我使用的代码是:

            NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
            [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss ZZ"];
            NSTimeZone *gmt = [NSTimeZone timeZoneWithAbbreviation:@"GMT"];
            [dateFormatter setTimeZone:gmt];

            NNSDate *gmtDate  = [[NSDate alloc] init];
            dateString = [dateFormatter stringFromDate:gmtDate];

            NSLog(@"Date String: %@", dateString);

1 个答案:

答案 0 :(得分:2)

您是否尝试过将时区设为EST?那可能会给你-0500