Форматирование времени в swift (iOS) - PullRequest
0 голосов
/ 28 сентября 2018

Я форматирую время в строке следующим кодом

let secondsFromGMT = 0
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
dateFormatter.timeZone = TimeZone(secondsFromGMT: secondsFromGMT)
print(dateFormatter.string(from: Date()))

Вывод будет следующим:

2018-09-28T10:27:05Z

Я бы хотел, чтобы формат не отличался отверсия, когда часовой пояс больше 1 минуты (скажем)

2018-09-28T10:30:19+00:01

То есть, я хочу, чтобы формат не был сокращен.Можно ли сделать это без изменения руководства?

ps Протестировал функцию TimeZone.current.secondsFromGMT () на симуляторе в iOS 10.3.1, значение равно 0, а в iOS 12.0 - 10800.это проблема симулятора?

1 Ответ

0 голосов
/ 28 сентября 2018

@ Ларм дал правильный ответ, поэтому решение:

let secondsFromGMT = 0
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssxxxxx"
dateFormatter.timeZone = TimeZone(secondsFromGMT: secondsFromGMT)
print(dateFormatter.string(from: Date()))

Вывод будет следующим:

2018-09-28T10:30:19+00:00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...