У меня проблема с получением правильной даты в следующем случае
let dateString = "May 2, 2018 at 3:31 PM"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMM dd, yyyy 'at' HH:mm a"
dateFormatter.timeZone = TimeZone(identifier: "UTC")
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
let date = dateFormatter.date(from: dateString)!
Я получаю "2 мая 2018 года в 8:31 утра" в качестве даты, что неверно
Когда одна и та же дата используется с другой строкой форматирования даты, я получаю правильную дату
let dateFormatter3 = DateFormatter()
dateFormatter3.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"
dateFormatter3.locale = Locale(identifier: "en_US_POSIX")
dateFormatter3.timeZone = TimeZone(identifier: "UTC")
let date3 = dateFormatter3.date(from: "2018-05-02T15:31:00")!
Возвращенная дата: «2 мая 2018 в 11:31», что является правильным.
Мне нравится знать, что я делаю неправильно в первом блоке кода? Или это ошибка в классе форматирования даты?