此代码适用于iOS 6.0模拟器,但不适用于iOS 5.0
NSString *unformattedDate = @"2008-09-25T20:41:11.000+00:00";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"];
NSDate *dateFromString = [dateFormatter dateFromString:unformattedDate];
[dateFormatter setDateFormat:@"dd.MM.yy"];
NSLog(@"%@", [dateFormatter stringFromDate:dateFromString]);
有什么不对?
答案 0 :(得分:4)
由于在iOS 6中添加了ZZZZZ
日期格式说明符,因此您无法使用iOS 5格式化具有+99:99
格式时区的日期。两个版本都支持{{1}使用+9999
格式化。如果您知道您的日期/时间字符串将始终具有冒号的时区,则可以剥离冒号。
ZZZZ
请注意,对于这样的固定格式,您必须将格式化程序的语言环境设置为特殊的“en_US_POSIX”语言环境。