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];

这并没有给我两个日期之间的总天数,而是简单的两个日期中的 2 天之间的差异。它的 dateBegin 是 2012 年 9 月 8 日,而 dateEnd 是 2012 年 11 月 10 日,结果是 2!为什么 ?

4

2 回答 2

2

改变你的波纹管

NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;

NSUInteger unitFlags = NSDayCalendarUnit;

于 2012-11-10T07:50:55.743 回答
0
    NSDateComponents *components;
    NSInteger days;

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

我也找到了那个解决方案。

于 2012-11-10T07:55:53.930 回答