iOS开发--时间戳问题
什么是时间戳?
时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。数字时间戳技术是数字签名技术一种变种的应用。
思考:简单来讲就是根据文件hash加密后生成的摘要和时间生成的时间凭证,它的数值是从1970年1月1日8点到现在时间的总的毫秒数
在Objective-C中如何将时间戳转换为NSDate?
1 NSString*str=@"1283376197"; 2 NSTimeIntervaltime=[str doubleValue]; 3 NSDate*detaildate=[NSDate dateWithTimeIntervalSince1970:time]; 4 NSLog(@"date:%@",[detaildatedescription]);
思考:使用该函数,传递时间戳的double值就可以得到NSDate时间
如何将当前时间转换为时间戳?
1 NSDate *datenow =[NSDate date];//现在时间,你可以输出来看下是什么格式 2 NSTimeZone *zone = [NSTimeZone systemTimeZone]; 3 NSInteger interval = [zone secondsFromGMTForDate:datenow]; 4 NSDate *localeDate = [datenow dateByAddingTimeInterval: interval]; 5 NSString *timeSp = [NSString stringWithFormat:@"%d", (long)[localeDate timeIntervalSince1970]]; 6 NSLog(@"timeSp:%@",timeSp); //时间戳的值
Objective-C的时间戳与java的时间戳相差1000倍,用java的时间戳除以1000即可Objective-C的时间戳