我想工作了几个月的差异锻炼区别
在现阶段,我有这样的代码:
dateInterval = [endDate timeIntervalSinceDate:startDate];
但是,返回值(秒),我想查看几个月内的日期之间的差异。
我该怎么做?
感谢
我想工作了几个月的差异锻炼区别
在现阶段,我有这样的代码:
dateInterval = [endDate timeIntervalSinceDate:startDate];
但是,返回值(秒),我想查看几个月内的日期之间的差异。
我该怎么做?
感谢
NSDateFormatter *inputFormatter = [[NSDateFormatter alloc] init];
[inputFormatter setDateFormat:@"dd/MM/yyyy"];
NSDate *startDate = [inputFormatter dateFromString:@"07/03/2011"];
NSDate *endDate = [inputFormatter dateFromString:@"07/06/2011"];
NSInteger month_delta = [[[NSCalendar currentCalendar] components: NSMonthCalendarUnit fromDate: startDate toDate: endDate options: 0] month];
NSLog(@"---------------------------->>%d", month_delta);
[inputFormatter release]; // <-- in case not using ARC
它会记录:
-------------------- -------- >> 3
您可以从有问题的NSDates一个NSDateComponents,只是减去总个月。 (共个月= 12 *年+ currentMonth)
如果一年中没有12个月会怎么样?如果你使用不同的日历怎么办?有些日历有闰月。 – 2011-03-07 18:25:51
+1这是正确的做法。它甚至可以工作12个月以上的差异。 – 2011-03-07 18:25:25