记录一种NSDateFormatter stringFromDa

2018-02-28  本文已影响188人  原野de呼唤

NSDateFormatter* dateFormat = [[NSDateFormatteralloc] init];

 [dateFormat setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSString* dateString = [dateFormat stringFromDate:date];

通常dateString的格式都是正确的,但是一部分用户dateString的格式不是yyyy-MM-dd HH:mm:ss,例如:

异常时间格式

最终在这个地方找到了答案,意思是如果用户设置了12/24时制的话,NSDateFormatter会把你的format string改写掉,重现条件应该是需要更改手机语言、地区、日历等设置(繁体?改成台湾、香港试试?),然后更改时制,我没有测试。

像这样给DateFormatter设置统一的Locale,然后就不管用户怎么改都是按照这个Locale为基准:

NSLocale *locale = [NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"];

 [dateFormat setLocale:locale];

上一篇下一篇

猜你喜欢

热点阅读