将带有T和Z字符的时间戳字符串转换为NSDate

时间:2014-09-12 19:52:18

标签: ios objective-c nsdate nsdateformatter

我不知道如何将此字符串转换为NSDate。

日期格式为“2012-10-21T07:00:00Z”

我想问题是我不知道字符串中T和Z的含义是什么:)

NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-ddTHH:mm:ssZ"];
NSDate *dateStart = [formatter dateFromString:@"2012-10-21T07:00:00Z"];

// format that I want
    [formatter setDateFormat:@"yyyy-MM-dd HH:mm"];

NSLog(@"date: %@", [formatter stringFromDate:dateStart]);

所有日期均采用该格式:2014-09-12T03:46:25Z

1 个答案:

答案 0 :(得分:2)

这是一个ISO日期。 Z代表祖鲁语,但代表UTC时间。

尝试:

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

提供初始nsdate。