本人搜索了很多关于iOS中时间与时间戳的相互转化的资料,下面我来记录一下,有需要了解iOS中时间与时间戳的相互转化的朋友可参考。希望此文章对各位有所帮助。
//获取当前系统时间的时间戳#pragma mark - 获取当前时间的 时间戳+(NSInteger)getNowTimestamp{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; // ----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 //设置时区,这个对于时间的处理有时很重要 NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate *datenow = [NSDate date];//现在时间 NSLog(@"设备当前的时间:%@",[formatter stringFromDate:datenow]); //时间转时间戳的方法: NSInteger timeSp = [[NSNumber numberWithDouble:[datenow timeIntervalSince1970]] integerValue]; NSLog(@"设备当前的时间戳:%ld",(long)timeSp); //时间戳的值 return timeSp;} //将某个时间转化成 时间戳#pragma mark - 将某个时间转化成 时间戳+(NSInteger)timeSwitchTimestamp:(NSString *)formatTime andFormatter:(NSString *)format{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:format]; //(@"YYYY-MM-dd hh:mm:ss") ----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate* date = [formatter dateFromString:formatTime]; //------------将字符串按formatter转成nsdate //时间转时间戳的方法: NSInteger timeSp = [[NSNumber numberWithDouble:[date timeIntervalSince1970]] integerValue]; NSLog(@"将某个时间转化成 时间戳&&&&&&&timeSp:%ld",(long)timeSp); //时间戳的值 return timeSp;} //将某个时间戳转化成 时间#pragma mark - 将某个时间戳转化成 时间+(NSString *)timestampSwitchTime:(NSInteger)timestamp andFormatter:(NSString *)format{ NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateStyle:NSDateFormatterMediumStyle]; [formatter setTimeStyle:NSDateFormatterShortStyle]; [formatter setDateFormat:format]; // (@"YYYY-MM-dd hh:mm:ss")----------设置你想要的格式,hh与HH的区别:分别表示12小时制,24小时制 NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"Asia/Beijing"]; [formatter setTimeZone:timeZone]; NSDate *confromTimesp = [NSDate dateWithTimeIntervalSince1970:timestamp]; NSLog(@"1296035591 = %@",confromTimesp); NSString *confromTimespStr = [formatter stringFromDate:confromTimesp]; //NSLog(@"&&&&&&&confromTimespStr = : %@",confromTimespStr); return confromTimespStr;}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。
新闻热点
疑难解答