7
如何比较两个NSDates并返回它们之间的时间量。比较两个NSDates
例如:
2010-06-20 14:29:41 -0400
2010-06-20 14:53:29 -0400
应该返回类似:23
或24
(分钟),四舍五入秒钟,因为我并不真正需要的秒数。
如何比较两个NSDates并返回它们之间的时间量。比较两个NSDates
例如:
2010-06-20 14:29:41 -0400
2010-06-20 14:53:29 -0400
应该返回类似:23
或24
(分钟),四舍五入秒钟,因为我并不真正需要的秒数。
尝试类似:
int intervall = (int) [date1 timeIntervalSinceDate: date2]/60;
这里完整的片段来比较两个NSDate的,您可以根据您的查询找到更多有用的。
NSCalendar *myCal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSString *str [email protected]"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
效果很好。谢谢一堆。 – 2010-06-20 21:28:10
请注意,这可能会计算为负数的分钟数,具体取决于较早的日期。如果它是否定的,则取否定数字,或者使用'abs'或'fabs'函数。 – 2010-06-21 06:13:26
感谢一如既往的提示@Peter – 2010-06-21 16:52:09