iOS 准确计算某个时间点距现在的时间差的代码 如"几分钟,几小时,几秒之前" ,...

利用时间戳来进行计算  ,需要给它一个时间:

  NSString *countTime = [self intervalSinceNow:@"2015-10-29 17:00:00"];

计算时间:

- (NSString *)intervalSinceNow: (NSString *) theDate

{

    

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

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

    NSDate *d=[date dateFromString:theDate];

    NSTimeInterval late=[d timeIntervalSince1970]*1;

    NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];

    NSTimeInterval now=[dat timeIntervalSince1970]*1;

    NSString *timeString=@"";

    

    NSTimeInterval cha=now-late;

    if (cha/60<1)

    {

        timeString = [NSString stringWithFormat:@"%.0f", cha];

//        timeString = [timeString substringToIndex:timeString.length-7];

        timeString=[NSString stringWithFormat:@"%@秒前", timeString];

    }

    if (cha/3600<1) {

        timeString = [NSString stringWithFormat:@"%.0f", cha/60];

//        timeString = [timeString substringToIndex:timeString.length-7];

        timeString=[NSString stringWithFormat:@"%@分钟前", timeString];

        

    }

    if (cha/3600>1&&cha/86400<1) {

        timeString = [NSString stringWithFormat:@"%.0f", cha/3600];

//        timeString = [timeString substringToIndex:timeString.length-7];

        timeString=[NSString stringWithFormat:@"%@小时前", timeString];

    }

    if (cha/86400>1)

    {

        timeString = [NSString stringWithFormat:@"%.0f", cha/86400];

//        timeString = [timeString substringToIndex:timeString.length-7];

        timeString=[NSString stringWithFormat:@"%@天前", timeString];

        

    }

//    [date release];

    return timeString;

}

 输出时间: 

 

 NSLog(@"%@",countTime);

  

2015-10-29 17:39:35.983 fortesw[6449:202920] 40分钟前

转载于:https://www.cnblogs.com/jgCho/p/4921228.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值