IOS 时间和时间戳之间转化

Posted 小眼奇遇记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS 时间和时间戳之间转化相关的知识,希望对你有一定的参考价值。

以毫秒为整数值的时间戳转换

  • 时间戳转化为时间NSDate
- (NSString *)timeWithTimeIntervalString:(NSString *)timeString
{
    // 格式化时间
    NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
    formatter.timeZone = [NSTimeZone timeZoneWithName:@"shanghai"];
    [formatter setDateStyle:NSDateFormatterMediumStyle];
    [formatter setTimeStyle:NSDateFormatterShortStyle];
    [formatter setDateFormat:@"yyyy年MM月dd日 HH:mm"];
    
    // 毫秒值转化为秒
    NSDate* date = [NSDate dateWithTimeIntervalSince1970:[timeString doubleValue]/ 1000.0];
    NSString* dateString = [formatter stringFromDate:date];
    return dateString;
}
  • 时间转化为时间戳
   
     // 当前时间
     NSDate* date = [NSDate dateWithTimeIntervalSinceNow:0];
    NSTimeInterval a=[date timeIntervalSince1970]*1000; // *1000 是精确到毫秒,不乘就是精确到秒
    NSString *timeString = [NSString stringWithFormat:@"%.0f", a]; //转为字符型
    
  • 通过比较时间与当前时间返回年月日的方法
- (void)getBabyDetailAge:(NSString *)date
{
    // 获得日期对象
    NSDateFormatter *formatter_ = [[NSDateFormatter alloc] init];
    formatter_.dateFormat = @"yyyy-MM-dd HH:mm:ss";
    NSDate *createDate = [formatter_ dateFromString:date];
    
    NSCalendar *gregorian = [[ NSCalendar alloc ] initWithCalendarIdentifier : NSCalendarIdentifierGregorian];
    NSUInteger unitFlags = NSCalendarUnitDay | NSCalendarUnitMonth | NSCalendarUnitYear;
    NSDateComponents *components = [gregorian components:unitFlags fromDate:createDate toDate:[NSDate date] options: 0 ];
    
    NSInteger years = [components year];
    NSInteger months = [components month ];
    NSInteger days = [components day ];
}

以上是关于IOS 时间和时间戳之间转化的主要内容,如果未能解决你的问题,请参考以下文章

急!将mysql中日期转化为时间戳

python 时间和时间戳的转化

亲测Shell日期时间和时间戳相互转化

vue.js怎样将时间戳转化为日期格式

pandas

pandas使用to_datetime函数将unix时间戳转化为日期时间格式(Convert Unix times to DateTime)