将日期格式化为特定格式

时间:2012-11-29 13:04:27

标签: ios nsdateformatter

我想知道我是否可以将这种字符串“2012-11-09 11:30:00”转换为“11月9日星期二11点30分” 我无法弄清楚我应该使用的NSDateFormatter的巫婆方法。 提前谢谢。

2 个答案:

答案 0 :(得分:2)

NSString *myDateString = @"2012-11-09 11:30:00";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss";
NSDate *myDate = [formatter dateFromString: myDateString];

formatter.dateFormat = @"EEEE d 'of' MMMM 'at' HH'h'mm";
NSString *myNewDateString = [formatter stringFromDate: myDate];

(我没有包括release,因为我习惯使用ARC)。

以下是我得到的输出:

  

11月9日星期五11点30分

Here是您可以使用的格式化程序列表。

请注意,这不包括日后的“st”,“nd”,“rd”和“th”。看看SO,有很多问题。

您还可以将formatter.locale设置为@"FR_fr"或其他任何内容,以更改当天/月的语言。

答案 1 :(得分:0)

我不确定是否有一个开箱即用的方法来获得你想要的东西,但这应该让你去: http://www.ios-developer.net/iphone-ipad-programmer/development/date-and-time/date-and-time-examples