将UTC字符串转换为NSDate

时间:2015-04-21 01:42:24

标签: ios objective-c

我有一个服务器以UTC格式返回的日期时间字符串:2015-04-21T00:54:46.469Z

我正在尝试将其转换为NSDate。代码是:

NSString *dateString = @"2015-04-21T00:54:46.469Z";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-mm-DDThh:mm:ss.sZ"];
NSDate *locationDate = [dateFormatter dateFromString:dateString];

执行此

后,locationDate的值为nil

1 个答案:

答案 0 :(得分:6)

你应该使用

[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"];

[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];

无论如何,T必须在引号中。这似乎是Apple的一个错误。