使用AM或PM时,NSDateFormatter为dateFromString返回nil

时间:2015-09-11 18:17:28

标签: ios objective-c iphone nsdateformatter

所以也许有人知道这一点,因为我似乎无法找到任何信息。对于iOS 8.0.4,使用此方法会导致dateFromString返回nil。

NSDateFormatter *df = [NSDateFormatter new];
[df setDateFormat:@"h:mma"];
NSDate *defaultDate = [df dateFromString:@"12:00PM"];

当我为iOS 8.1.x上的其他设备构建它时,这很好用。我也尝试过“h:mm aa”或“h:mm a”的变体并调整dateFromString参数,但它仍然返回nil。这不可能吗?

1 个答案:

答案 0 :(得分:0)

实际上是版本问题。我正在测试的另一台设备被设置为24小时格式,导致零返回。所以我添加了这一行:

[df setLocale:[NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"]];