带有 AM/PM 的日期格式化程序返回 nil



我知道这个话题在这里和其他论坛上都有充分的讨论。 不幸的是,我仍然无法理解为什么日期为零。

请注意,当我在调试器或 Playground 中运行代码时,它完全正常工作。 这与它在设备上运行的事实有关。

var dateString = "2019-12-17 3:48:02 PM"
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale.current
dateFormatter.timeZone = TimeZone.current
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss a"
let date = dateFormatter.date(from: dateString) // date is nil

添加en_US作为您的区域设置,如下所示:

dateFormatter.locale =  NSLocale(localeIdentifier: "en_US")

最新更新