Mad*_*dav 5 iphone xcode cocoa-touch nsdateformatter
我使用的是NSDateFormatter,问题在于它的一致性.如果我使用kCFDateFormatterMediumStyle,它在模拟器中给出格式为"2009年11月26日",但在设备上它给出"2009年11月26日".
现在我有了一个问题,这个NSFormatter在不久的将来是否值得信赖,或者来自苹果的更新是否可以再次改变风格?
Dou*_*yle 17
虽然上面提到的另一个答案在技术上是正确的,但它并没有为您提供所需的解决方案.虽然NSDateFormatter默认使用用户区域设置(并且因此不会给您带来有用的结果),但您可以请求特定区域设置以获得一致的结果:
NSDateFormatter *frm = [[NSDateFormatter alloc] init];
[frm setDateFormat:@"EEE MMM dd HH:mm:ss ZZZ yyyy"];
NSLocale *en_US = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[frm setLocale:en_US];
[en_US release];
Run Code Online (Sandbox Code Playgroud)
NSDateFormatter 根据设备上的国际设置,将日期格式化为用户的偏好。因此,您永远不能期望该字符串保持一致,因为世界各地的日期显示方式有很多不同。
我发现将日期格式化为字符串(用于提供给网络服务器等)的最佳方法是使用 NSDateComponents 并将其转换为字符串。
| 归档时间: |
|
| 查看次数: |
6286 次 |
| 最近记录: |