0

我知道有很多关于这个主题的主题,我已经阅读了所有主题。

在我的特殊情况下,当在 iPhone 6.1 模拟器上测试时,dateFromString 工作正常,但在 iPhone 5.1 模拟器上返回 null。我还在 iOS6 和 iOS5 的几台设备上对其进行了测试,得出了相同的结论。

“输入”中的格式为: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 "Fri. 15 Feb 2013, 18:00" 和 iOS5 上的 "null" 中获取。

请帮我

4

1 回答 1

1

这不是 iOS5 或 iOS 6 的问题。请检查设置中设置的时间格式是12小时格式还是24小时格式。

它会解决你的问题

于 2013-02-06T12:04:04.857 回答