Как преобразовать строку в дату без изменения времени - PullRequest
0 голосов
/ 01 февраля 2020

Из этой строки: "2020-01-25 20:11:00"

Это мой код, и после разговора дата его возвращения со временем изменилась:

let scheduleDate : String = "2020-01-25 20:11:00"
let dateFromat : DateFormatter = DateFormatter()
dateFromat.dateFormat = "yyyy-MM-dd HH:mm:ss"
let dateFromString = dateFromat.date(from: scheduleDate)
print(dateFromString as Any) // 2020-01-25 14:41:00 +0000

Я получаю 2020-01-25 14:41:00 + 0000 вместо 2020-01-25 20: 11: 00 . почему время изменилось после строки разговора на дату. что мне не хватает в моем коде?

1 Ответ

2 голосов
/ 01 февраля 2020

Просто добавьте часовой пояс к dateFormatter

dateFromat.timeZone = TimeZone.init(secondsFromGMT: 0)

Обновленный код:

let scheduleDate : String = "2020-01-25 20:11:00"
let dateFromat : DateFormatter = DateFormatter()
dateFromat.dateFormat = "yyyy-MM-dd HH:mm:ss"
dateFromat.timeZone = TimeZone.init(secondsFromGMT: 0)
let dateFromString = dateFromat.date(from: scheduleDate)
print(dateFromString as Any) 
...