我正在从我的服务器解析 JSON,其中一个值是这样的日期:2013-01-21 18:22:35 +00000
我的问题是如何将此日期转换为当地时间,例如2013-01-21 12:22:35 -0600
我需要将日期转换为其他格式吗?
谢谢!
编辑。
使用@Gabriele Petronella 解决方案:
NSString * yourJSONString = @"2013-01-21 18:22:35 +0000";
NSTimeZone* localTimeZone = [NSTimeZone localTimeZone];
NSString* localAbbreviation = [localTimeZone abbreviation];
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:locale];
[dateFormatter setDateFormat:@"yyyy-MM-dd H:mm:ss Z"];
NSDate *aDate = [dateFormatter dateFromString:yourJSONString];
NSTimeZone *timezone = [NSTimeZone timeZoneWithName:localAbbreviation];
[dateFormatter setTimeZone:timezone];
NSLog(@"%@", [dateFormatter stringFromDate:aDate]);
一切正常!