我从Django API获得NSString 2012-08-17T10:56:45.508205
作为时间。
我正在尝试使用以下代码将该字符串转换为NSDate
对象:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];
[dateFormatter setTimeZone:timeZone];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *date = [dateFormatter dateFromString:stringToConvert];
但日期对象为空。我哪里出错了?
你从 Django API 获取的ISO8601字符串 (2012-08-17T10:56:45.508205) 不包含时区组件。 但是,您将在格式字符串中包含该字段符号 (Z)。 只需删除它,它应该可以正常工作。
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS"];
有关格式代码的更多信息,请参阅 Unicode 技术参考: