比较来自服务器和本地nsdate的nsdate

时间:2015-09-26 14:04:25

标签: ios nsdate nsdateformatter

我有两个字符串格式的日期: -

  1. 服务器时间戳=" 2015-09-26T13:37:20.000Z";
  2. 本地时间戳(转换为UTC格式)=" 2015-09-26T13:57:44.000 + 0000";
  3. 将本地日期转换为UTC格式的代码是: -

    NSDateFormatter* df_utc = [[NSDateFormatter alloc] init];
                [df_utc setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
                [df_utc setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"];
    
    NSString* ts_utc_string = [df_utc stringFromDate:Localnsdate];
    
    // NEED TO CONVERT LOCAL DATA INTO NSDATE INTO NSSTRING BECOZ SERVER DATA I AM GETTING IS IN STRINGFORMAT
    

    我想比较本地和服务器数据,并想要检测哪个日期是早期的。 但是当我尝试将这些字符串转换为nsdate时,我没有将nsdate作为零。 请帮帮我。

1 个答案:

答案 0 :(得分:0)

您必须将两个日期字符串转换为NSDate对象,然后使用以下方法对它们进行比较:

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");
}