NSDate
класс не хранит информацию о часовых поясах. Я должен хранить NSTimeZone
отдельно. Я не могу найти способ получить часовой пояс из строки, например: "2015-01-09T00:00:00+02:00"
или "2015-01-09T02:00:00Z
. Не могли бы вы мне помочь, пожалуйста?Как получить временную зону от временной строки
0
A
ответ
1
Предлагаю использовать библиотеку для форматирования формата данных даты. Я могу порекомендовать ISO8601 форматирования даты - https://github.com/boredzo/iso-8601-date-formatter и используя его [dateFormatter dateComponentsFromString:
метод, чтобы получить NSDateComponents
Edit:
Просто включить пример с metioned библиотеки:
ISO8601DateFormatter *dateFormatter = [[ISO8601DateFormatter alloc] init];
dateFormatter.includeTime = YES;
NSString *testTime = @"2015-01-09T00:00:00+02:00";
NSTimeZone *timeZone;
NSDateComponents *components = [dateFormatter dateComponentsFromString:testTime timeZone:&timeZone];
Производит:
Printing description of timeZone:
GMT+0200 (GMT+2) offset 7200
Да Я вижу, что «+02: 00» Z эквивалентно «00:00» – Tomasz
В общем, вы не можете. Прочтите «Часовой пояс! = Смещение» в [wiki часового пояса] (http://stackoverflow.com/tags/timezone/info). –