2012-03-28 53 views
0

我在的NSString格式以下格式的日期:字符串的NSDate然後回到串

2012-03-27 14:43:22 +0000 //this is a string 

我想要的就是以某種方式轉變是這樣說的:March 27

所以我想通要做到這一點的方式是這個字符串轉換爲一個NSDate,然後格式化新的NSDate我想要的格式,然後再返回到字符串,但我得到空輸出:

NSString *date=[sectionInfo name]; 
NSLog(@"date:%@", date); 
NSDateFormatter *k= [[NSDateFormatter alloc] init]; 
[k setDateFormat:@"yyyy-mm-DD hh:mm:ss a"]; 
NSDate *d=[k dateFromString:date]; 
NSLog(@"%@", d); 

NSDateFormatter *df = [NSDateFormatter new]; 
[df setDateFormat:@"MMMM dd"]; 
NSString *dateString=[df stringFromDate:d]; 
NSLog(@"dateString:%@", dateString); 

輸出:

date:2012-03-28 14:43:22 +0000 
(null) 
dateString:(null) 

我在做什麼錯?

回答

1

我猜你的格式字符串應該是"yyyy-MM-dd HH:mm:ss Z"

而且,嘗試使用getObjectValue:forString:range:error:方法,而不是dateFromString:並看看錯誤返回。

+0

這工作,謝謝:) – Snowman 2012-03-28 15:20:43

1

你需要有資本HH在您的格式,也改變了A到Z,像這樣:

[k setDateFormat:@"yyyy-mm-DD HH:mm:ss z"]; 
相關問題