比较两个带日期的NSString

有两个字符串,分别带有日期,我想要实现判断日期是否相同,然后执行不同进程。

代码:

 NSString*test=data.addedDateTime;
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy_MM_dd"];
NSDate* date = [NSDate date];
NSString* str = [formatter stringFromDate:date];
NSString*addedDateTime=str;
if ([test isEqualToString:str]) {
    [todayArray addObject:theObject];
    int count=[todayArray count];
    NSLog(@"Today array working %d",count);
}
else {
    [yesterdayArray addObject:theObject];
}

代码运行后,即使日期相同也会判成不相同。

 NSString*test=data.addedDateTime;
    NSDateFormatter* df = [[NSDateFormatter alloc] init];
            [df setDateFormat:@"yyyy_MM_dd"];
            NSDate* d = [df dateFromString:test];
            [df release];
    NSDate* date = [NSDate date];
    if ([d isEqualToDate:date) {
        [todayArray addObject:theObject];
        int count=[todayArray count];
        NSLog(@"Today array working %d",count);
    }
    else {
        [yesterdayArray addObject:theObject];
    }

试试看这段代码。