如何比较两个NSDates并返回它们之间的时间量。
例如:
2010-06-20 14:29:41 -0400
2010-06-20 14:53:29 -0400
应返回类似:23
或24
(分钟)的内容,将秒数四舍五入,因为我不需要秒数。
答案 0 :(得分:11)
尝试类似:
int intervall = (int) [date1 timeIntervalSinceDate: date2] / 60;
答案 1 :(得分:2)
这里是比较两个NSDate的完整代码段,根据您的查询,您可能会发现它更有用。
NSCalendar *myCal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSString *str =@"12:15, 01 15 2012 AM";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"hh:mm, dd MM yy a"];
NSDate *refDate = [formatter dateFromString:str];
NSDate *today = [NSDate date];
NSUInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit;
NSDateComponents *difference = [myCal components:unitFlags fromDate:refDate toDate:today options:0];
NSLog(@"%@",difference);
------------------------------你会得到的是------------ -----------------------------
日历年:0月:0天:0小时:1分钟:19