Формат даты («гггг-мм-дд чч: мм: сс вв») возвращает ноль - PullRequest
0 голосов
/ 01 мая 2019

Я пытаюсь изменить формат своей даты для покупок в приложении, но на реальных устройствах возвращает ноль, но в симуляторе это работает отлично.

let DateString = "2016-01-21 00:29:09 Etc/GMT"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss VV"
var dateObject = dateFormatter.date(from: DateString)
print(dateObject)

1 Ответ

0 голосов
/ 01 мая 2019

Вы должны всегда устанавливать locale вашего DateFormatter при работе с жестко закодированными форматами даты.Вы можете использовать en_US_POSIX в большинстве сценариев.

let dateString = "2016-01-21 00:29:09 Etc/GMT"
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss VV"
let dateObject = dateFormatter.date(from: dateString)
print(dateObject)
...