为什么NSDateFormatter返回nil?
问题描述:
为什么在执行这段代码后iPhone模拟器3.1.2上的lDateFormatted
nil
?为什么NSDateFormatter返回nil?
NSString *lDateString = @"Wed, 17 Feb 2010 16:02:01";
NSDateFormatter* dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy hh:mm:ss"];
NSDate *lDateFormatted = [dateFormatter dateFromString: lDateString ];
任何想法表示赞赏,感谢
答
DateFormatter格式正确,但您可能已设置错误的语言环境。尝试这一个(我的项目之一的工作示例代码):
NSDateFormatter *格式化= [[NSDateFormatter的alloc] INIT];
NSLocale * enUS = [[NSLocale alloc] initWithLocaleIdentifier:@“en_US”];
[formatter setLocale:enUS];
[enUS release];
[formatter setDateFormat:@“EEE,dd MMM yyyy HH:mm:ss”];
...
[格式化发行]
+0
注意:如果当前设备设置为军事时间(24小时格式),如果您在NSDateFormatter中强制使用“en_US”语言环境,则最终可能会出现无日期对象。 – 2012-05-07 18:32:53
在这种情况下,蜱似乎没有必要,但我把它们放在反正。谢谢! – 2010-02-12 18:29:55