我正在使用以下代码来正确获取月份....它返回正确的数据..但它给出了 我从两个日期开始2个月...假设我给了两个日期,比如janauary to march, 它会给2个月......我怎样才能完全改变天数(包括feb)......
NSCalendar *sysCalendar = [NSCalendar currentCalendar];
unsigned int unitFlags = NSSecondCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit;
NSDateComponents *breakdownInfo = [sysCalendar components:unitFlags fromDate:date1 toDate:date2 options:0];
NSLog(@"Break down: %dmons", [breakdownInfo month]);
答案 0 :(得分:1)
您可以使用NSDateComponents
,但您可以通过计算每个日期的timeInterval的差异来计算天数。 NSTimeInterval
是一个计算秒数的浮点数。
#define kSecondsInDay 86400
int numberOfDays = [date2 timeIntervalSinceDate:date1] / kSecondsInDay;
答案 1 :(得分:0)
仅在创建日期组件时指定NSDayCalendarUnit
标记,您将获得[breakdownInfo day]
的结果天数。