在iOS上更改date格式

我有这种格式的date:

2012-06-26 12:00:00 +0000 

而我想要做的是以这种格式转换它们:

 Jun 26, 2012 12:00:00 AM 

有没有一种简单的方法来做到这一点obj-c,或者我必须parsing一切硬核,并为此做我自己的function? 如果是的话,任何想法如何看起来像,因为我在iOS上是新的。 D.非常感谢您阅读我的文章:D

要从1个string转换到另一个使用以下

 NSString *inputString = @"2012-06-26 12:00:00 +0000"; NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; [formatter setDateFormat:@"yyyy-MM-dd hh:mm:ss z"];//input NSDate *date = [formatter dateFromString:inputString]; [formatter setDateFormat:@"MMM dd, yyyy hh:mm:ss a"]; NSString *outputString = [formatter stringFromDate:date]; NSLog(@"output : %@",outputString); 

首先,你应该在NSDate中把你的string(使用NSDateFormatter)转换,然后把它转换回NSString(仍然使用相同的NSDateFormatter)。

这是一个NSDateFormatter的例子:

 NSString *dateString = @"2013-04-01T22:00:00Z"; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"]; [dateFormatter setTimeZone:[NSTimeZone defaultTimeZone]; NSDate *theDate = [dateFormatter dateFromString:dateString];