我知道这个主题有很多主题,我已经全部阅读过了。
在我的特殊情况下,在iPhone 6.1模拟器上测试时,dateFromString工作正常,但在iPhone 5.1模拟器上返回null。我已经在iOS6和iOS5的几个设备上测试了它得出了相同的结论。
'input'中的格式为:2013-02-15T18:00:00 + 03:00
我写了以下代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss+zz:zz"];
NSDate *dateFromString = [[NSDate alloc] init];
dateFromString = [dateFormatter dateFromString:input];
[dateFormatter setDateFormat:@"EEE'. 'dd' 'MMM' 'yyyy', 'HH':'mm"];
NSString *stringFromDate = [dateFormatter stringFromDate:dateFromString];
return stringFromDate;
...在iOS6上获取stringFromDate“2013年2月15日星期五,18:00”,在模拟器和设备上获取iOS5上的“null”。
请帮帮我
答案 0 :(得分:1)
不是iOS5或iOS 6问题。请检查设置中设置的时间格式是12小时格式还是24小时格式。
它将解决您的问题