Нет ничего плохого. Средство форматирования даты возвращает правильное время
Строка даты
«2020-08-11T05: 32: 33.000Z»
представляет дату в UT C (+ 0000).
Ваш местный часовой пояс, очевидно, UTC + 0530. DateFormatter
по умолчанию учитывает местный часовой пояс.
Чтобы отформатировать time
также в UT C, вы должны явно указать часовой пояс средства форматирования даты
func printTime(date: Date) {
let dateFormatter = DateFormatter()
dateFormatter.timeZone = TimeZone(identifier: "UTC")
dateFormatter.dateFormat = "h:mm a"
dateFormatter.amSymbol = "AM"
dateFormatter.pmSymbol = "PM"
let time = dateFormatter.string(from: date)
print("date: \(date)")
print("Time: \(time)")
}