我有一个行为不端的NSDateCategory。我正在设定年份,月份日,但其结果完全不同:
变量: 年= 2012年 月= 10 day = 1
+ (NSDate *)dateWithYear:(NSInteger)year month:(NSInteger)month day:(NSInteger)day
{
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [[NSDateComponents alloc] init];
[components setYear:year];
[components setMonth:month];
[components setDay:day];
NSDate *result = [calendar dateFromComponents:components];
return result;
}
NSLog输出 结果= 2012-09-30 23:00:00 +0000
答案 0 :(得分:2)
添加此行
[components setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"UTC"]];
希望这对你有用
答案 1 :(得分:0)
做到这一点:
NSDateComponents * components = [日历组件:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:[NSDate date]];