如何比较两个日期?

MD.*_*MD. 2 iphone objective-c nsdate

我有三个日期:(1)previousDate(2)currentDate(3)nextDate,我想检查currentDate是否晚于上一个日期,早于nextDate.我怎么做?

iph*_*v23 8

 NSDateFormatter *df= [[NSDateFormatter alloc] init];

[df setDateFormat:@"yyyy-MM-dd"];

NSDate *dt1 = [[NSDate alloc] init];

NSDate *dt2 = [[NSDate alloc] init];

dt1=[df dateFromString:@"2011-02-25"];

dt2=[df dateFromString:@"2011-03-25"];

NSComparisonResult result = [dt1 compare:dt2];

switch (result)

{

     case NSOrderedAscending: NSLog(@"%@ is greater than %@", dt2, dt1); break;

     case NSOrderedDescending: NSLog(@"%@ is less %@", dt2, dt1); break;

     case NSOrderedSame: NSLog(@"%@ is equal to %@", dt2, dt1); break;

     default: NSLog(@"erorr dates %@, %@", dt2, dt1); break;
}
Run Code Online (Sandbox Code Playgroud)


Luc*_*eis 6

我想你正在使用NSDate类.

您可以使用isEqualToDate来比较两个NSDate对象.而且,检查currentdate 的earlyDatelaterDate比前一个日期更大,并且小于下一个日期.