解析格式为@"MMM dd ''YY"的NSDate
Parse NSDate with format @"MMM dd ''YY"
我有一个日期字符串,如下所示:2015 年 3 月 13 日
我找不到正确的方法来解析它。我尝试了以下方法:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM dd ''YY"];
//[df setDateFormat:@"MMM dd 'YY"];
//[df setDateFormat:@"MMM dd YY"];
NSDate *date = [df dateFromString:label.text];
有人知道如何使用 setDateFormat 吗?
谢谢^^
YY
用于基于周的日历年,用于某些非公历。您通常应该改用 yy
。见 unicode reference of valid date pattern.
并且您应该将区域设置设置为 en_US_POSIX
,以确保日期被解析为英语日期。例如,在德语语言环境中,您的转换将失败,因为今天 Mar 13 '15
是 März 13 '15
.
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM dd ''yy"];
[df setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]];
您使用了错误的年份样式,您需要使用小写的 y。
[df setDateFormat:@"MMM d ''yy"];
大写 Y 被记录为 "Year (in "一年中的第几周“基于日历)。”并提到 "May not always be the same value as calendar year"。看:
http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns
我有一个日期字符串,如下所示:2015 年 3 月 13 日
我找不到正确的方法来解析它。我尝试了以下方法:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM dd ''YY"];
//[df setDateFormat:@"MMM dd 'YY"];
//[df setDateFormat:@"MMM dd YY"];
NSDate *date = [df dateFromString:label.text];
有人知道如何使用 setDateFormat 吗? 谢谢^^
YY
用于基于周的日历年,用于某些非公历。您通常应该改用 yy
。见 unicode reference of valid date pattern.
并且您应该将区域设置设置为 en_US_POSIX
,以确保日期被解析为英语日期。例如,在德语语言环境中,您的转换将失败,因为今天 Mar 13 '15
是 März 13 '15
.
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM dd ''yy"];
[df setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]];
您使用了错误的年份样式,您需要使用小写的 y。
[df setDateFormat:@"MMM d ''yy"];
大写 Y 被记录为 "Year (in "一年中的第几周“基于日历)。”并提到 "May not always be the same value as calendar year"。看: http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns