IOS項目中會遇到時間轉的問題,當從服務端傳回時間到客戶端,而這個時間確是時間戳,並且是13位,如果是普通的字符串比如“2015-09-24 19:00:000” 這樣轉化是比較簡單,但是時間戳不是這樣的,ios生成的時間戳是10位,所以說需要進行轉換。以下有幾種方式:
第一種:
NSString * timeStampString = @"1423189125874";
NSDate *date = [NSDate dateWithTimeIntervalSince1970:[timeStampString doubleValue] / 1000];
NSLog(@"%f", ([date timeIntervalSince1970] * 1000.0));
第二種:
NSString * timeStampString = @"1423189125874";
NSTimeInterval _interval=[[timeStampString substringToIndex:10] doubleValue];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:_interval];
NSLog(@"%@", date);
格式化時間:
NSString * timeStampString = @"1423189125874";
NSTimeInterval _interval=[timeStampString doubleValue] / 1000.0;
NSDate *date = [NSDate dateWithTimeIntervalSince1970:_interval];
NSDateFormatter *objDateformat = [[NSDateFormatter alloc] init];
[objDateformat setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"%@", [objDateformat stringFromDate: date]);
