Iphone 使用NSDateFormatter格式化日期字符串

Iphone 使用NSDateFormatter格式化日期字符串,iphone,Iphone,我有一个从xml提要传递的NSString NSString *strDate =@"May 14 2010"; 我目前正在使用此代码格式化日期 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateStyle:NSDateFormatterMediumStyle]; [dateFormatter setTimeStyle:NSDateFormatterShortStyle]

我有一个从xml提要传递的NSString

NSString *strDate =@"May 14 2010";
我目前正在使用此代码格式化日期

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
[dateFormatter setDateFormat:@"d:MMM"];
NSDate *myDate = [dateFormatter dateFromString:strDate];
NSLog(@"%@", [dateFormatter stringFromDate:myDate]);
我只想格式化我的字符串以显示日期和月份,目前我得到的NSDate值为零。有人能帮我吗


谢谢。

我想你有点误解了NSDateFormatter的工作原理。它无法自动计算出字符串中日期的格式

如果将代码更改为以下内容:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MMM dd yyyy"];
NSDate *myDate = [dateFormatter dateFromString:strDate];
[dateFormatter setDateFormat:@"d:MMM"];
NSLog(@"%@", [dateFormatter stringFromDate:myDate]);

它应该可以做你想做的。

它成功了。所以我们必须指定我们的格式是什么。谢谢你的帮助Benno。我被困在这里面有一段时间了。。。。干杯