(Objective C) NSDate is nil 转换字符串中的日期

(Objective C) NSDate is nil to convert a date in String

我有这个字符串日期:

Wed, 14 Oct 2015 9:58 am CDT

然后我尝试使用此代码将此字符串转换为 NSData

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"EE, d LLL YYYY HH:mm a Z"];
NSDate *date = [dateFormat dateFromString:@"Wed, 14 Oct 2015 9:58 am CDT"];

但是作为 NSDate 变量的日期始终是 nil。我试图用不同的语法更改我的 DateFormat 但我得到了相同的结果。

问题是您使用 capital Z instead of lowercase z 作为时区缩写。我还建议将 EEE 减少到一个 E,将 LLL 更改为 MMM,使用 yyyy 作为年份,并使用 h 而不是 HH 一小时。

"E, d MMM yyyy h:mm a z"

作为日期格式问题的快速提示,请尝试先将日期转换为字符串并比较输出。