2012-11-10 115 views
0
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年11月10日的结果是2!为什么?差异日期:总天数

回答

2

更改波纹线

NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;

NSUInteger unitFlags = NSDayCalendarUnit;

+0

谢谢,我也找到了另一种解决方案。 – Fabrizio

+0

BTW:Xcode附带的代码示例“DateDiff”也令人鼓舞。 – 2012-11-10 11:10:41

0
NSDateComponents *components; 
    NSInteger days; 

    components = [[NSCalendar currentCalendar] components: NSDayCalendarUnit 
    fromDate: startDate toDate: endDate options: 0]; 
    days = [components day]; 

我也找到了解决方案。