2013-10-29 207 views
-2

我有一個NSDate值,看起來像這樣2013-03-20,我認爲這是YYYY-MM-dd。我想知道如何reformat它看起來像這樣20-March-2013但我只是無法弄清楚。NSDate格式導致重新格式化

這是我試過的,但它返回null。

NSDate *tempsDate = [tempDic objectForKey:@"date"]; 
      NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
      [dateFormatter setDateFormat:@"ddMMyyyy"]; 
      NSString *textDate = [NSString stringWithFormat:@"%@",[dateFormatter stringFromDate:tempsDate]]; 
      NSLog(@"Date %@",textDate); 
+0

什麼是您當前日誌的日期? – Tirth

+0

所以tempsDate = 2013-03-20 和我的NSLog =「日期(空)」 – HurkNburkS

+0

嘗試Mutawe回答。 – Tirth

回答

0

試試這個代碼,並請注意,我沒有測試它

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd"]; 
NSString *displayString = [NSDate stringForDisplayFromDate:[tempDic objectForKey:@"date"]]; 
NSDate *date = [dateFormatter dateFromString: displayString]; 
[dateFormatter setDateFormat:@"dd-MMM-yyyy"]; 
NSString *newFormattedDate = [dateFormatter stringFromDate:date]; 
+0

這工作完美,我只需要拿出autorelease,它工作得很好。哦,我改變了輸出是YYYY而不是YY – HurkNburkS

+0

虐待你馬上回答你的答案是正確的。 – HurkNburkS

+0

很高興聽到這個:),我會更新我的回答 – Mutawe