iOS 本地时间UTC时间时间戳等操作
Posted readBooks
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 本地时间UTC时间时间戳等操作相关的知识,希望对你有一定的参考价值。
//获得当前时间并且转为字符串
- (NSString *)dateTransformToTimeString { NSDate *currentDate = [NSDate date];//获得当前时间为UTC时间 2014-07-16 07:54:36 UTC (UTC时间比标准时间差8小时) //转为字符串 NSDateFormatter*df = [[NSDateFormatter alloc]init];//实例化时间格式类 [df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//格式化 //2014-07-16 07:54:36(NSString类) NSString *timeString = [df stringFromDate:currentDate]; return timeString; }
//获取当前时间转为时间戳
- (NSString *)dateTransformToTimeSp { UInt64 recordTime = [[NSDate date] timeIntervalSince1970]*1000;//客户端当前13位毫秒级时间戳 NSString *timeSp = [NSString stringWithFormat:@"%llu",recordTime];//时间戳转字符串(13位毫秒级时间戳字符串) return timeSp; }
1 //时间戳字符串1469193006001(毫秒)1469193006.001(毫秒,1469193006001234(微秒)1469193006.001234(微秒)转 UTC时间2016-08-11T07:00:55.611Z 2 - (NSString *)timespToUTCFormat:(NSString *)timesp 3 { 4 NSString *timeString = [timesp stringByReplacingOccurrencesOfString:@"." withString:@""]; 5 if (timeString.length >= 10) { 6 NSString *second = [timeString substringToIndex:10]; 7 NSString *milliscond = [timeString substringFromIndex:10]; 8 NSString * timeStampString = [NSString stringWithFormat:@"%@.%@",second,milliscond]; 9 NSTimeInterval _interval=[timeStampString doubleValue]; 10 NSDate *date = [NSDate dateWithTimeIntervalSince1970:_interval]; 11 12 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 13 NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"]; 14 [dateFormatter setTimeZone:timeZone]; 15 [dateFormatter setDateFormat:@"yyyy-MM-dd‘T‘HH:mm:ss.SSS‘Z‘"]; 16 NSString *dateString = [dateFormatter stringFromDate:date]; 17 18 return dateString; 19 } 20 return @""; 21 }
//13位时间戳1469193006001(毫秒)转 系统时间2016-08-11 08:55:36
1 + (NSString *)timespToYMDFormat:(NSNumber *)timesp 2 { 3 NSString *stime = [timesp stringValue]; 4 NSTimeInterval time = [[stime substringToIndex:10] doubleValue]; 5 NSDate *detaildate=[NSDate dateWithTimeIntervalSince1970:time]; 6 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 7 [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 8 9 return [dateFormatter stringFromDate: detaildate]; 10 }
// 时间转时间戳的方法:sendDate为NSDate类
NSString *timeSp = [NSString stringWithFormat:@"%ld", (long)[sendDate timeIntervalSince1970]];
以上是关于iOS 本地时间UTC时间时间戳等操作的主要内容,如果未能解决你的问题,请参考以下文章