JSON日期到NSDate结果为零

时间:2014-02-24 06:28:18

标签: ios json nsstring nsdate

我有一个JSON格式的日期字符串,如下所示:2014-02-07T00:00:00+08:00

我正在尝试将其转换为格式为NSDate的{​​{1}}。

MM/dd/yyyy

但结果是零。怎么了?

1 个答案:

答案 0 :(得分:3)

正确的日期格式为:

[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssxxx"];

[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZZZ"];

请参阅:ICU Formatting Dates and Times

NSString *datestring = @"2014-02-07T00:00:00+08:00";

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:sszzz"];
NSDate *date = [dateFormat dateFromString:datestring];
NSDateFormatter *newDateFormatter = [[NSDateFormatter alloc]init];
[newDateFormatter setDateFormat:@"MM/dd/yyyy"];
NSString *newString = [newDateFormatter stringFromDate:date];
NSLog(@"Date: %@, formatted date: %@", date, newString);

NSLog输出:

  

日期:2014-02-06 16:00:00 +0000,格式化日期:02/06/2014