Я просто хочу уточнить, понимаю ли я, как работают даты и часовые пояса.
В принципе, у меня есть строка даты @ "2008-07-06 12:08:49", которую я хочу преобразовать в NSDate. Я хочу, чтобы эта дата и время находились в любом часовом поясе текущего пользователя. Поэтому, если они находятся в GMT или HST, это все равно 12:08:49.
Если у меня есть дата в формате unix 1215382129 (UTC), а мой часовой пояс установлен на Лондон (GMT), выводимая дата из NSLog () будет:
2008-07-06 12:08:49 +0100
Если я затем изменю свой часовой пояс на Гавайи (HST) и выведу ту же дату, я получу:
2008-07-06 12:08:49 -1000
Кажется, это работает нормально, но у меня создалось впечатление, что для получения времени на гавайском языке мне пришлось бы физически добавить разницу во времени (-10 часов) к отметке времени unix. Значит, это не требуется?
Означает ли это, что независимо от даты и времени, на которые указывает время unix, оно всегда указывает на одну и ту же дату и время в любом часовом поясе, в котором находится пользователь?
Надеюсь, это имеет смысл!
Изменить
Я только что понял (спасибо Кевину Коннеру!), Что на самом деле NSDateFormatter создает разные временные метки unix для этой строки даты в зависимости от текущего часового пояса! Так что я был совершенно неправ !! :-)