【发布时间】:2010-09-13 16:08:10
【问题描述】:
我正在尝试以某种格式打印出日期:
NSDate *today = [[NSDate alloc] init];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyyMMddHHmmss"];
NSString *dateStr = [dateFormatter stringFromDate:today];
如果 iPhone 设置为 24 小时制,这可以正常工作,另一方面,如果用户已将其设置为 24 小时制,然后返回 AM/PM(在您切换此设置之前它可以正常工作)然后它即使我没有要求,也会在末尾附加 AM/PM:
20080927030337 PM
是我做错了什么还是固件 2.1 的错误?
编辑 1:使描述更清晰
编辑 2 解决方法:事实证明这是一个错误,为了修复它,我将 AM 和 PM 字符设置为“”:
[dateFormatter setAMSymbol:@""];
[dateFormatter setPMSymbol:@""];
【问题讨论】:
-
遇到完全相同的问题——很高兴看到我没有发疯!
-
请注意,如果您使用 setAM/PM 方法,字符串中仍然会有额外的空格。
标签: iphone ios objective-c nsdate nsdateformatter