这两种日期格式有什么区别。第一个给出实际时间,第二个给出时间购买添加时区偏移值。
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];
NSDate *dateConverted = [dateFormatter dateFromString:@"2013-12-02T12:15:43.182Z"];
NSLog(@"Date: %@",dateConverted); //
日期:2013-12-02 12:15:43 +0000
NSDateFormatter * dateFormatter1 = [[NSDateFormatter alloc] init];
[dateFormatter1 setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormatter1 setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss.SSS'Z'"];
NSDate *dateConverted1 = [dateFormatter1 dateFromString:@"2013-12-02T12:15:43.182Z"];
NSLog(@"%@",dateConverted1);
日期:2013-12-02 06:45:43 +0000
最佳答案
第二种格式的问题是所有不必要的引号,尤其是 Z
周围。通过引用 Z
这意味着 Z
被视为文字字符而不是时区格式说明符。
去掉 Z
两边的引号,两者会得到相同的结果。
关于ios - NSDateFormatter 区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20332667/