你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> IOS-時間與字符串互相轉換

IOS-時間與字符串互相轉換

編輯:IOS開發綜合

有時會遇到這樣的問題,需要把時間和時間戳互相轉換

比如把當前時間轉換成 “20140716155436”這樣的格式

或者是把“20140716155436”轉換成“2014-07-16 15:54:36”

首先來第一個:

當前時間轉換成 “20140716155436”這樣的格式

///////////////////////////////

//獲取當前時間

NSDate * today = [NSDate date];

NSLog(@"%@",today);

打印出來是“2014-07-16 07:54:36 +0000”

很奇怪?現在明明是2014-07-16 15:54:36啊

因為存在不同時區,系統默認格林尼治時間

所以就要轉換時間格式了

//轉換時間格式

NSDateFormatter *df = [[NSDateFormatter alloc] init];//格式化

[df setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSString * s1 = [df stringFromDate:today];

NSLog(@" s1s1s1s%@",s1);

打印出來是“2014-07-16 15:54:36”

現在已經獲取到當前的時間

這樣還沒有完呢,需要轉換成一個字符串,類似“20140716052021”的時間戳


NSDate * date = [df dateFromString:s1];

//轉換時間格式

NSDateFormatter *df2 = [[NSDateFormatter alloc] init];//格式化

[df2 setDateFormat:@"yyyyMMddHHmmss"];

[df2 setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"]];

NSLog(@"%@",[df2 stringFromDate:date]);

打印出來是“20140716155436”
接下來就是第二個:

把“20140716155436”轉換成“2014-07-16 15:54:36”

首先要把20140716155436轉換成時間格式

//轉換時間格式

NSDateFormatter *df = [[NSDateFormatter alloc] init];//格式化

[df setDateFormat:@"yyyyMMddHHmmss"];

[df setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"zh_CN"] ];

NSDate *date =[[NSDate alloc]init];

date =[df dateFromString:bill_timeStr];

str = [NSString stringWithFormat:@"%@",date];

str的結果是“2014-07-16 07:54:36 +0000”

這時候就需要再轉一次

//

NSDateFormatter * df2 = [[NSDateFormatter alloc] init];

[df2 setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

NSString * str1 = [df2 stringFromDate:date];

str1的結果是“2014-07-16 15:54:36”

ok,大功告成


  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved