NSDateFormatter 返回空值

NSDateFormatter returning null value

我正在尝试使用 NSDateFormatter 格式化日期,但是对于某些日期,格式化方式相同,它 return 是没有第一位数字的时间,而对于其他日期,它 return 是 null .

NSDateFormatter *dateFormat = [NSDateFormatter new];
[dateFormat setDateFormat:@"EEEE dd/MM/yyyy HH:mm"];
dateFormat.locale = [NSLocale localeWithLocaleIdentifier:@"en_AU"];
NSDate *startDate = [dateFormat dateFromString:startString];
NSDate *endDate = [dateFormat dateFromString:endString];

此日期:"Saturday 1/21/2017 17:00" 将 return(空)

这个日期:"Thursday 2/9/2017 14:00" 将 return 2017-09-02 04:00:00 +0000

这个日期:"Thursday 2/9/2017 20:30" 将 return 2017-09-02 10:30:00 +0000

任何人都可以阐明我哪里出错了。 谢谢

EEEE dd/MM/yyyy HH:mmEEEE MM/dd/yyyy HH:mm。只是一个小错误,颠倒了日期和月份的位置。 因为,很明显 "Saturday 1/21/2017 17:00" 表示 1 月 21 日,因为一年中的第 21 个月不存在(至少,这里不存在)。

10 小时的时差,是时区造成的。在en_AU(我猜是东海岸),与格林威治标准时间有 10 小时的差异。