Objective C转换格式日期字符串

时间:2016-02-14 02:40:52

标签: objective-c nsdateformatter

我有以下字符串:

2016-02-13T00:00:00

我想格式化它以消除时间。

我使用以下代码:

NSDateFormatter *DateFormatter=[[NSDateFormatter alloc] init];
[DateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *date = [DateFormatter dateFromString:periodStr];

NSString *formattedDate = [DateFormatter stringFromDate:date];

出于某种原因,在浏览NSDateFormatter之后,变量date为null。

我不明白。我做错了什么?

1 个答案:

答案 0 :(得分:2)

这是因为您的格式@"yyyy-MM-dd"与字符串"2016-02-13T00:00:00"的格式不匹配。因此,NSDateFormatter无法从此字符串中提取日期。

你基本上省略了一步。您要做的是从与输入字符串匹配的格式开始,并从字符串中提取日期。然后设置与所需输出字符串匹配的格式,并从日期中提取字符串。