iOS 计算时间差

- (NSString *)dateTimeDifferenceWithStartTime:(NSString *)startTime endTime:(NSString *)endTime {
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSDate *startD =[dateFormatter dateFromString:startTime];
    NSDate *endD = [dateFormatter dateFromString:endTime];
    NSTimeInterval start = [startD timeIntervalSince1970]*1;
    NSTimeInterval end = [endD timeIntervalSince1970]*1;
    NSTimeInterval value = end - start;
    int second = (int)value %60;//秒
    int minute = (int)value /60%60;
    int house = (int)value / (24 * 3600)%3600;
    int day = (int)value / (24 * 3600);
    NSString *stringTimeInterval;
    if (day != 0) {
        stringTimeInterval = [NSString stringWithFormat:@"耗时%d天%d小时%d分%d秒",day,house,minute,second];
    }else if (day==0 && house != 0) {
        stringTimeInterval = [NSString stringWithFormat:@"耗时%d小时%d分%d秒",house,minute,second];
    }else if (day== 0 && house== 0 && minute!=0) {
        stringTimeInterval = [NSString stringWithFormat:@"耗时%d分%d秒",minute,second];
    }else{
        stringTimeInterval = [NSString stringWithFormat:@"耗时%d秒",second];
    }
    return stringTimeInterval;
}

- (NSTimeInterval)timeIntervarlWithStartTime:(NSString *)startTime endTime:(NSString *)endTime {
    NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
    NSDate * dateStart = [dateFormatter dateFromString:startTime];
    NSDate * dateEnd = [dateFormatter dateFromString:endTime];
    return [dateEnd timeIntervalSinceDate:dateStart];
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容