【发布时间】:2012-11-06 12:00:39
【问题描述】:
我有以下代码通过使用日期中的 YEAR、MONTH 和 DAY 组件来将日期的时间设置为 0 小时、0 分钟和 0 秒:
NSDate *date = [NSDate date];
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *comps = [gregorian components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit) fromDate:date];
NSDate *newDate = [gregorian dateFromComponents:comps];
NSLog(@"date: %@, newDate: %@", date, newDate);
输出是:
date: 2012-11-06 11:44:09 +0000, newDate: 2012-11-05 23:00:00 +0000
但我希望新日期是:2012-11-06 00:00:00 +0000
发生了什么事我应该知道的?
【问题讨论】:
标签: ios datetime nsdate nscalendar nsdatecomponents