ios 将某个时间转成距当前时间的时间差

首先,时间格式为yyyy-MM-dd HH:mm:ss,然后将这个时间转换成距离现在多久前,代码如下:

、、、

+ (NSString *) compareCurrentTime:(NSString *)str

{

//把字符串转为NSdate

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSDate *timeDate = [dateFormatter dateFromString:str];

//得到与当前时间差

NSTimeInterval  timeInterval = [timeDate timeIntervalSinceNow];

timeInterval = -timeInterval;

long temp = 0;

NSString *result;

if (timeInterval < 60) {

result = [NSString stringWithFormat:@"刚刚"];

}

else if((temp = timeInterval/60) <60){

result = [NSString stringWithFormat:@"%ld分钟前",temp];

}

else if((temp = temp/60) <24){

result = [NSString stringWithFormat:@"%ld小时前",temp];

}

else if((temp = temp/24) <30){

result = [NSString stringWithFormat:@"%ld天前",temp];

}

else if((temp = temp/30) <12){

result = [NSString stringWithFormat:@"%ld月前",temp];

}

else{

temp = temp/12;

result = [NSString stringWithFormat:@"%ld年前",temp];

}

return  result;

}

、、、

然后进行调用就可以了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容