iPhone: конвертировать Nsstring в Nsdate на часовом поясе устройства - PullRequest
3 голосов
/ 03 мая 2010

Я получил дату от веб-службы в формате GMT ​​+ 1 (2010-02-25T20: 16: 50.387 + 05: 30). Я хочу конвертировать в NSdate. Я понятия не имею о форматере даты.

Подскажите, пожалуйста, как я могу изменить это значение nsstring на текущий формат даты (часовой пояс)

Ответы [ 2 ]

2 голосов
/ 03 мая 2010

Преобразование "2010-02-25T20: 16" в NSDate с использованием DateFormatter:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMdd'T'HHmm";
NSDate *gmtDate = [formatter dateFromString:@"2010-02-25T20:16"];

Получив дату по Гринвичу, вы можете добавить / вычесть из нее GMT-смещение вашего часового пояса, чтобы получить текущую дату NSD в вашем часовом поясе. Чтобы получить смещение между вашим часовым поясом и GMT, вы можете использовать следующее:

NSTimeInterval timeZoneOffset = [[NSTimeZone defaultTimeZone] secondsFromGMT];
1 голос
/ 03 мая 2010

NSDateFormatter - все о преобразовании дат в и из строковых представлений. Посмотрите документы для этого.

...