OC开发资料收集区

ios秒转标准时间

2017-05-05  本文已影响5人  oc123

标准时间即(2017-05-05 17:33:09)字符串;

//时间戳 转 标准时间(2017-07-15格式) - wsx注释
+(NSString *)timeStampSwitchStandardTime:(long long)timeStamp{
    NSDate *date = [NSDate dateWithTimeIntervalSince1970:timeStamp];//秒数@"1493976789"转时间    
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
    NSString *time = [formatter stringFromDate:date];//时间转标准时间字符串
    NSLog(@"标准时间字符串:%@",time);
    
    return time;
}

打印截图:


秒转标准时间.png

进阶转换,显示多少秒/分/小时/天之前,代码如下:

//时间戳 转 标准时间(2017-07-15格式) - wsx注释
+(NSString *)timeStampSwitchStandardTime:(long long)timeStamp{
    NSDate *nowDate = [NSDate date];
    NSDate *oldDate = [NSDate dateWithTimeIntervalSince1970:timeStamp];//时间戳转Date时间
    // 两个时间戳的间隔   返回的是秒
    NSTimeInterval timeInterval = [nowDate timeIntervalSinceDate:oldDate];
    NSInteger interval = (NSInteger)timeInterval;
    //日期获取 - wsx注释
    NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"YYYY-MM-dd"];
    NSString *time;
    if (interval < 60 ) {
        time = [NSString stringWithFormat:@"%ld秒前",(long)interval];
    }else if (interval < 60*60){
        time = [NSString stringWithFormat:@"%ld分前",(long)interval/60];
    }else if (interval < 60*60*24){
        time = [NSString stringWithFormat:@"%ld小时前",(long)interval/3600];
    }else if (interval < 60*60*24*2){
        time = @"昨天";
    }else if (interval < 60*60*24*3){
        time = @"前天";
    }else{
        time = [formatter stringFromDate:oldDate];//时间转标准时间字符串
    }
    NSLog(@"标准时间字符串:%@",time);
    
    return time;
}
上一篇下一篇

猜你喜欢

热点阅读