Вопрос

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

Например, мой текущий часовой пояс — PDT.Я установил часовой пояс DateFormatter на CST.У меня есть строка со временем в CST.Но когда я использую средство форматирования даты для преобразования этой строки в дату, я получаю дату в PDT, тогда как мне нужно, чтобы она была в CST.

Может кто-нибудь, пожалуйста, помогите.

Спасибо.

Это было полезно?

Решение

NSDate хранит только секунды с 00:00:00 01 января.2001.В описании NSDate будет использоваться ваш текущий часовой пояс (например, если попытаться выполнить отладку с помощью NSLog).

Вы должны получить часовой пояс по умолчанию с помощью

[NSTimeZone defaultTimeZone] 

а затем вычислите смещение, используя

-(NSTimeInterval)secondsFromGMT
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top