比较日期对象?

时间:2015-07-24 21:29:02

标签: ios objective-c date nsdate

我有来自Parse,"2015-07-24 20:36:38 +0000"的这个日期对象,我想将它与今天的日期进行比较,看看自date对象的日期以来已经过了多少时间。任何想法如何做到这一点?

我使用这种方法来获取时间和分钟,但我仍然坚持如何使用它来比较当天之外的日期。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"hh:mm"];

NSString *formattedTime = [dateFormatter stringFromDate: date];

2 个答案:

答案 0 :(得分:2)

您可以使用NSTimeInterval,代码为:

NSTimeInterval timeInterval = [date timeIntervalSinceNow]; 

日期是从解析为NSDate的日期,而不是NSString。并且在比较之前不需要格式化它。希望这有帮助

答案 1 :(得分:0)

如果您希望将其格式化为字符串,则在iOS 8及更高版本中,您可以使用NSDateComponentsFormatter

NSDateComponentsFormatter *formatter = [[NSDateComponentsFormatter alloc] init];
formatter.allowedUnits = NSCalendarUnitMinute | NSCalendarUnitHour;
NSString *string = [formatter stringFromDate:date toDate:[NSDate date]];