【问题标题】:NSDateFormatter is showing wrong date format (nachm. instead of PM) in the simulatorNSDateFormatter 在模拟器中显示错误的日期格式(nachm。而不是 PM)
【发布时间】:2010-09-16 12:07:47
【问题描述】:

为什么模拟器显示10:30 nachm. 而不是10:30 PM?我使用以下代码:

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"h:mm a"];
NSLog(@"%@",[dateformat stringFromDate: myDate]);

好的,我想我必须在某个地方设置一个区域设置...

【问题讨论】:

  • 不要对任何 am/pm 方案进行硬编码,因为它并非在每个国家/地区都使用(h 用于 1-12 小时表示..)

标签: iphone objective-c cocoa-touch nsdateformatter


【解决方案1】:

我认为您的模拟器中的语言设置为德语。比纳赫姆。意思是 Nachmittags。这等于 PM。看看模拟器中的设置。 ;-)

【讨论】:

  • 常规 -> 国际 -> 区域格式 -> 美国(例如)我认为设置语言就足够了。但似乎并非如此。谢谢。
  • “10:30 nachmittags”也绝对不常见,因为“nachmittags”通常是中午和晚上之间的时间(晚上 10:30 主要是不是“nachmittags”)。我不确定它是否与“下午”完全匹配,但这是对“下午”的误导性翻译。尽管如此,在德国,24 小时制更为普遍。
  • 只有没有晚上 10:30 到德语的 1:1 翻译。您不应该假设和/或硬编码这种格式,因为它本身就是一种语言环境设置..
猜你喜欢
  • 1970-01-01
  • 2016-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-15
  • 2019-07-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多