-6

我不知道我缺少什么,但我不知道为什么我的 NSDateformatter 不工作。

我的代码如下:

NSDateFormatter *formatterObj = [[NSDateFormatter alloc]init];

[formatterObj setDateFormat:@"MMM dd, yyyy"];
NSDate *newDate = [formatterObj dateFromString:@"2013-03-04 19:12:55 +0000"];
NSString *stringDate = [formatterObj stringFromDate:newDate];

NSLog(@"%@",stringDate);

它正在打印一个空对象,但我不知道为什么。任何帮助将不胜感激。

我想要的输出格式为“2013 年 1 月 11 日”

4

2 回答 2

1

您的格式化程序应该是:

[formatterObj setDateFormat:@"yyyy-MM-dd HH:mm:ss zzz"];
于 2013-03-06T16:19:46.310 回答
1

你需要两种格式。一个解析原始字符串。第二个生成所需的输出。您正在尝试使用输出格式解析字符串。那是行不通的。

NSDateFormatter *formatterObj = [[NSDateFormatter alloc]init];

[formatterObj setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZZ"];
NSDate *newDate = [formatterObj dateFromString:@"2013-03-04 19:12:55 +0000"];
[formatterObj setDateFormat:@"MMM dd, yyyy"];
NSString *stringDate = [formatterObj stringFromDate:newDate];

NSLog(@"%@",stringDate);
于 2013-03-06T17:16:17.260 回答