Satrt日期和结束日期验证

时间:2014-03-13 07:07:55

标签: iphone objective-c ipad ios7.1

我有字符串格式的开始日期和结束日期。我想比较结束日期​​和开始日期,结束日期应该大于开始日期。如何做到这一点。

NSLog(@"%@",date);
NSDateFormatter *df = [[NSDateFormatter alloc] init];

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

_start_date = [[NSDate alloc] init];

_start_date = [df dateFromString: date];

NSLog(@"date: %@", _start_date);`

在start_date上获取nil。

2 个答案:

答案 0 :(得分:0)

创建NSDateFormatter的实例。 配置它。 解析字符串以获取NSDate对象(dateFromString :)。 比较它们(比较:)。

答案 1 :(得分:0)

您需要使用NSDateFormatter将字符串转换为NSDate个对象。

由于您的日期为dd-MM-yy格式,请执行以下操作:

NSString *dateStr1 = @"21-3-14";
NSDateFormatter *dateFormatter = [NSDateFormatter new];
[dateFormatter setDateFormat:@"dd-MM-yy"];
NSDate *date1 = [dateFormatter dateFromString:dateStr1];

同样创建另一个日期,比如date2然后您可以比较这些日期。

if ([date1 compare:date2] == NSOrderedDescending) {
    NSLog(@"date1 is later than date2");        

} else if ([date1 compare:date2] == NSOrderedAscending) {
    NSLog(@"date1 is earlier than date2");

} else {
    NSLog(@"dates are the same");
}