Cocoa NSDateFormatter分析日期不正确
我正在从表示日期的文本中提取字符串。它们看起来像这样:Cocoa NSDateFormatter分析日期不正确,cocoa,cocoa-touch,nsdate,nsdateformatter,Cocoa,Cocoa Touch,Nsdate,Nsdateformatter,我正在从表示日期的文本中提取字符串。它们看起来像这样: 美国东部时间2010年8月16日星期一上午05:28 我正试图用NSDateFormatter解析它们。我已将其格式设置为: [dateFormatter setDateFormat:@“EEEE MMMM d,YYYY h:mm a z”] 然而,这不起作用。对于我上面给出的示例,如果我将字符串转换为日期,然后将该日期转换为字符串,则日期格式化程序将返回以下内容: 2009年12月28日星期一美国东部时间上午5:28 我做错了什么 编辑:
美国东部时间2010年8月16日星期一上午05:28
我正试图用NSDateFormatter解析它们。我已将其格式设置为:
[dateFormatter setDateFormat:@“EEEE MMMM d,YYYY h:mm a z”]代码>
然而,这不起作用。对于我上面给出的示例,如果我将字符串转换为日期,然后将该日期转换为字符串,则日期格式化程序将返回以下内容:
2009年12月28日星期一美国东部时间上午5:28
我做错了什么
编辑:使用格式[dateFormatter setDateFormat:@“EEEE MMMM d,y h:mm a z”]时,它似乎起作用代码>。奇怪…威尔
NSDateFormatter使用Unicode标准格式化日期。正如您所发现的,“y”起作用,但“yyy”不起作用。如果您看到规范(在Apple文档中引用了好几层,因此不容易找到),您会看到“Y”有这样一个注释:“年(指“一年中的一周”),用于ISO年-周日历。可能与日历年不同
我知道你自己已经修好了,但这可能有助于解释为什么“Y”不适合你。“Y”或“yyyy”可以。“YYYY”不起作用。
查看以下链接以了解详细信息