iOS时间处理之时间对比 by Nicky.Tsui

通过项目需求, 服务器返回了一个

order_canceled_time 订单自动取消时间  

如果我要跟当前时间做一个对比,然后生成出一个倒计时的时间 

那么首先我们要知道

order_canceled_time这个字段返回的时间格式

"order_canceled_time" = "2015-08-20 13:50:40";

以这个时间为例,格式是 "年-月-日 时-分-秒"

把这个格式的时间用 NSDateFormatter 转换成NSDate

具体代码:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
        [formatter setDateStyle:NSDateFormatterMediumStyle];
        [formatter setTimeStyle:NSDateFormatterShortStyle];
        [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
        NSDate *tranfromDate = [formatter dateFromString:@"2015-08-20 13:50:40"];

然后用NSDate的时间对比,获取时间差

NSDate *currentDate = [NSDate date];
NSTimeInterval timeInterval = [tranfromDate timeIntervalSinceDate:currentDate];

此时timeInterval就是两个时间差的秒数了

后面再把秒数转换成 时-分-秒

        long hours = 0;
        long minutes = 0;
        long seconds = 0;
        hours = (long)timeInterval/3600;
        minutes = (long)timeInterval%3600/60;
        seconds = (long)timeInterval%60;
        NSLog(@"订单剩余%ld时%ld分%ld秒付款",hours,minutes,seconds);

 

posted @ 2015-08-20 17:19  sixindev  阅读(323)  评论(0编辑  收藏  举报