从 String 到 NSDate 的错误转换
Wrong NSDate conversion from String
我有日期(NSDate),
我转换格式为“EEEE,dd MMM YYYY”所以输出是。 “2017 年 5 月 22 日,星期一”
但是当把这个字符串转换成日期时它给出了错误的日期
使用此代码
NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setDateFormat:@"EEEE,dd MMM YYYY"];
NSDate *currentDate = [formatter dateFromString:“Monday,22 May 2017”];
错误的输出是 2016-12-25 18:30:00 +0000
有人可以帮忙吗?
日期没有正确的格式,但在这里使用 yyyy
而不是 YYYY
@"YYYY" is week-based calendar year.
@"yyyy" is ordinary calendar year.
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];
样本
NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];
NSDate *currentDate = [formatter dateFromString:@"Monday,22 May 2017"];
问题出在这一行 [formatter setDateFormat:@"EEEE,dd MMM YYYY"];
。
此 yyyy
指定日历年,而 YYYY
指定年份(一年中的一周)。所以你应该使用 yyyy
而不是 YYYY
。
所以你的代码会像这样
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];
我有日期(NSDate),
我转换格式为“EEEE,dd MMM YYYY”所以输出是。 “2017 年 5 月 22 日,星期一”
但是当把这个字符串转换成日期时它给出了错误的日期
使用此代码
NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setDateFormat:@"EEEE,dd MMM YYYY"];
NSDate *currentDate = [formatter dateFromString:“Monday,22 May 2017”];
错误的输出是 2016-12-25 18:30:00 +0000
有人可以帮忙吗?
日期没有正确的格式,但在这里使用 yyyy
而不是 YYYY
@"YYYY" is week-based calendar year.
@"yyyy" is ordinary calendar year.
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];
样本
NSDateFormatter * formatter = [NSDateFormatter new];
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];
NSDate *currentDate = [formatter dateFromString:@"Monday,22 May 2017"];
问题出在这一行 [formatter setDateFormat:@"EEEE,dd MMM YYYY"];
。
此 yyyy
指定日历年,而 YYYY
指定年份(一年中的一周)。所以你应该使用 yyyy
而不是 YYYY
。
所以你的代码会像这样
[formatter setDateFormat:@"EEEE,dd MMM yyyy"];