我正在尝试将数据从 EXIF 日期解析为NSDate
. 这是从图像文件中获取的示例日期字符串:
2013:10:15 19:19:31
它是year:month:day 24hour:minute:second
格式的。我正在使用以下代码来解析它:
NSDateFormatter *formatter = [[NSDateFormatter alloc] initWithDateFormat:@"yyyy:MM:dd HH:mm:ss" allowNaturalLanguage:YES];
formatter.formatterBehavior = NSDateFormatterBehavior10_4;
formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
NSDate *date = [formatter dateFromString:dt];
如果我不设置格式化程序行为,它会抱怨在 10.0 格式化程序上尝试使用 10.4 的语言环境标识符。(我在小牛队,我认为这是小牛队的一个新问题)无论如何我已经尝试过完全不设置语言环境,将语言环境设置为en_US_POSIX
而不是 just ,为en_US
格式化程序设置时区,更改yyyy
为YYYY
日期格式和但是,总是返回 nil。我的应用程序在 OS X Mavericks 上运行,我的系统语言是英语,如果重要的话,我的地区设置为土耳其。我希望我的应用程序是纯英语的,独立于用户的区域(包括日期格式)。我见过这个问题:Parsing EXIF date string to NSDate但即使我尝试了确切的步骤,格式化程序也会返回 nilallowNaturalLanguage
NO
dateFromString
dateFromString
. 日期格式化程序有什么问题?