将 NSDate 转换为格式 "MMM, YYYY" 时 NSDateformatter 出现问题
Issue with NSDateformatter while converting NSDate to format "MMM, YYYY"
我的 NSDate
的值为 2015-12-27 +0000
,当我将此 NSDate
转换为 NSString
格式 MMM, YYYY
时,我得到:
NSString 为 Dec, 2016
这是因为日期格式中的大写 Y 指定的是 ISO week date system 中的年份,而不是公历。
我想您的代码可能类似于:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM, YYYY"];
NSLog(@"Date: %@", [df stringFromDate:yourDate]);
改为尝试使用格式:
[df setDateFormat:@"MMM, yyyy"];
当使用诸如此类的格式字符串来指定输出格式时,NSDateFormatter 使用 Unicode Technical Standard #35 中的约定(如果您需要更多详细信息,它描述了 Y 和 y 之间的区别)。
我的 NSDate
的值为 2015-12-27 +0000
,当我将此 NSDate
转换为 NSString
格式 MMM, YYYY
时,我得到:
NSString 为 Dec, 2016
这是因为日期格式中的大写 Y 指定的是 ISO week date system 中的年份,而不是公历。
我想您的代码可能类似于:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MMM, YYYY"];
NSLog(@"Date: %@", [df stringFromDate:yourDate]);
改为尝试使用格式:
[df setDateFormat:@"MMM, yyyy"];
当使用诸如此类的格式字符串来指定输出格式时,NSDateFormatter 使用 Unicode Technical Standard #35 中的约定(如果您需要更多详细信息,它描述了 Y 和 y 之间的区别)。