时间差转换、获取当前时间、时间戳 以及转换

获取系统当前的时间

  • yyy --代表 年(2017)
  • MM --代表 月 (06)
  • dd -- 代表 日 (16)
  • HH --代表 时 (13)
  • mm --代表 分 (22)
  • ss -- 代表秒 (14)
  • yyy-MM-dd HH:mm:ss -----> 2017-06-16 13:22:14
/**
 * 获取当前系统时间

 @return 字符串
 */
-(NSString*)getCurrentTime {
    
    NSDateFormatter*formatter = [[NSDateFormatter alloc]init];
    
    [formatter setDateFormat:@"yyy-MM-dd HH:mm:ss"];
    
    NSString*dateTime = [formatter stringFromDate:[NSDate date]];
    
    NSLog(@"当前时间是===%@",dateTime);
    // 当前时间是===2017-06-16 13:22:14
    
    return dateTime;
    
}

获取当前时间戳

-(NSString*)getCurrentTimestamp{
    
    NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
    
    NSTimeInterval a=[dat timeIntervalSince1970];
    
    NSString*timeString = [NSString stringWithFormat:@"%0.f", a];//转为字符型
    
    return timeString;
    
}

把时间戳转化为时间

-(NSString*)SetTime:(NSString*)time{
    
    NSDateFormatter*formatter = [[NSDateFormatter alloc]init];
    
    [formatter setDateStyle:NSDateFormatterMediumStyle];
    
    [formatter setTimeStyle:NSDateFormatterShortStyle];
    
    [formatter setDateFormat:@"yyyMMdd"];
    
    int timeval = [time intValue];
    
    NSDate*confromTimesp = [NSDate dateWithTimeIntervalSince1970:timeval];
    
    // NSLog(@"1296035591  = %@",confromTimesp);
    
    NSString*confromTimespStr = [formatter stringFromDate:confromTimesp];
    
    return confromTimespStr;
    
}

时间差转换

       ZBHomeDoctorChat *chatPre = _dataSource[indexPath.row - 1];
        
        ZBHomeDoctorChat *chatNow = _dataSource[indexPath.row];
    
        NSTimeInterval time1 = [chatPre.dialog_timestamp doubleValue];
        
        NSDate *date1 = [NSDate dateWithTimeIntervalSince1970:time1];
        
        NSTimeInterval time2 = [chatNow.dialog_timestamp doubleValue];
        
        NSDate *date2 = [NSDate dateWithTimeIntervalSince1970:time2];
        
        NSLog(@"date1---%@*********date2*****%@",date1,date2);
        
        NSCalendar *cal = [NSCalendar currentCalendar];
        
        unsigned int unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
        
        NSDateComponents *d = [cal components:unitFlags fromDate:date1 toDate:date2 options:0];
        
        //总共有多少秒
        
        long sec = [d hour]*3600+[d minute]*60+[d second];
        
        NSLog(@"%ld小时 %ld分钟 %ld秒",[d hour],[d minute],[d second]);


2017-04-25 15:17:48.731172 FamilyPlatForm[19475:8863564] date1---2017-04-25 04:26:10 +0000*********date2*****2017-04-25 04:28:54 +0000
2017-04-25 15:17:48.731416 FamilyPlatForm[19475:8863564] 0小时 2分钟 44秒
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Js获取当前日期时间及其它操作 var myDate = new Date(); myDate.getYear()...
    郝赫阅读 4,793评论 0 3
  • 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析...
    时待吾阅读 10,517评论 1 13
  • 在应用程序中添加日志记录总的来说基于三个目的:监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析...
    时待吾阅读 10,447评论 0 6
  • 一些标识符标识符含义 aAM/PM(上午/下午) A0~86399999 (一天的第A微秒) c/cc1~7 (一...
    苦可乐阅读 6,133评论 0 0
  • 没有去五台山之前,就听到很多人对五台山有了很高的评价。自己离得这么近,怎么着也得过去看看。所以就去了。 那天的早上...
    糅合阅读 1,670评论 0 0

友情链接更多精彩内容