NSCalendar *gregorian = [[NSCalendar alloc]
initWithCalendarIdentifier:NSGregorianCalendar];
NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *components = [gregorian components:unitFlags
fromDate:dateBegin
toDate:dateEnd options:0];
totalDays = [components day];
这不是给出了两个日期之间的总天数,而是两个日期的两天之间的差异。它dateBegin是2012年8月8日,dateEnd是2012年10月10日,结果是2!为什么?
答案 0 :(得分:2)
更改您的波纹管线
NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;
到
NSUInteger unitFlags = NSDayCalendarUnit;
答案 1 :(得分:0)
NSDateComponents *components;
NSInteger days;
components = [[NSCalendar currentCalendar] components: NSDayCalendarUnit
fromDate: startDate toDate: endDate options: 0];
days = [components day];
我也找到了解决方案。