iOS标准时间与时间戳相互转换
iOS標準時間與時間戳相互轉換
設置時間顯示格式:
????NSString* timeStr = @"2011-01-26 17:40:50";
????NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
????[formatter setDateStyle:NSDateFormatterMediumStyle];
????[formatter setTimeStyle:NSDateFormatterShortStyle]; ??
????[formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; // ----------設置你想要的格式,hh與HH的區別:分別表示12小時制,24小時制
???
????//設置時區,這個對于時間的處理有時很重要
????//例如你在國內發布信息,用戶在國外的另一個時區,你想讓用戶看到正確的發布時間就得注意時區設置,時間的換算.
????//例如你發布的時間為2010-01-26 17:40:50,那么在英國愛爾蘭那邊用戶看到的時間應該是多少呢?
????//他們與我們有7個小時的時差,所以他們那還沒到這個時間呢...那就是把未來的事做了
???
????NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];
????[formatter setTimeZone:timeZone];
???
????NSDate* date = [formatter dateFromString:timeStr]; //------------將字符串按formatter轉成nsdate
???????????
????NSDate *datenow = [NSDate date];//現在時間,你可以輸出來看下是什么格式
???
????NSString *nowtimeStr = [formatter stringFromDate:datenow];//----------將nsdate按formatter格式轉成nsstring
時間轉時間戳的方法:
????NSString *timeSp = [NSString stringWithFormat:@"%d", (long)[datenow timeIntervalSince1970]];
????NSLog(@"timeSp:%@",timeSp); //時間戳的值
?時間戳轉時間的方法
????NSDate *confromTimesp = [NSDate dateWithTimeIntervalSince1970:1296035591];
????NSLog(@"1296035591 ?= %@",confromTimesp); ?????
????NSString *confromTimespStr = [formatter stringFromDate:confromTimesp];
????NSLog(@"confromTimespStr = ?%@",confromTimespStr);
時間戳轉時間的方法:
NSDateFormatter*?formatter?=?[[NSDateFormatter?alloc]?init];
[formatter?setDateStyle:NSDateFormatterMediumStyle];
[formatter?setTimeStyle:NSDateFormatterShortStyle];
[formatter?setDateFormat:@"yyyyMMddHHMMss"];
NSDate?*date?=?[formatter?dateFromString:@"1283376197"];
NSLog(@"date1:%@",date);
[formatter?release];
本文轉自 卓行天下? 51CTO博客,原文鏈接:http://blog.51cto.com/9951038/1746328,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的iOS标准时间与时间戳相互转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spark RDD概念学习系列之RDD的
- 下一篇: Apache的make编译错误