Unix时间戳转换成iOS(Object-c)时间 解析JSON

2016-03-29  本文已影响943人  DAIDAIDAIDAI

先看看后台返回的这个鬼

/Date(1456478126000+0800)/

准换unix网址 http://tool.chinaz.com/Tools/unixtime.aspx

开始以为截取中间的时间戳就行了,后来发现不行,然后查看了下unix时间的转换,发现位数不足的时候,后面补0,然后截取时候去掉0就可以了。

- (NSString *)getDateString:(NSString *)unixDateString{

NSRange range1 = [unixDateString rangeOfString:@"("];//匹配得到的下标

NSRange range2 = [unixDateString rangeOfString:@"+"];//匹配得到的下标

NSRange range3 = NSMakeRange(range1.location +1, range2.location - range1.location - 1 - 3);//截取时间戳(注意,unix时间戳位数不够补0,所以删除最后的0)

NSString *time = [unixDateString substringWithRange:range3];//时间戳

NSTimeInterval timeInterval = [time doubleValue];//秒

NSDate *date = [NSDate dateWithTimeIntervalSince1970:timeInterval];//日期

NSString *dateString = [DateFomatter getDateStringForDateFormatter:@"yyyy-MM-dd" from:date];//转换格式,这里就不贴码了。

return dateString;

}

如有不正确的地方,还望指正。

上一篇下一篇

猜你喜欢

热点阅读