iPhone: преобразование Nsstring в Nsdate в часовом поясе устройства

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

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


person Rupesh    schedule 03.05.2010    source источник


Ответы (2)


Преобразуйте «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-вашего часового пояса, чтобы получить текущую NSDate в вашем часовом поясе. Чтобы получить смещение между вашим часовым поясом и GMT, вы можете использовать следующее:

NSTimeInterval timeZoneOffset = [[NSTimeZone defaultTimeZone] secondsFromGMT];
person Hetal Vora    schedule 03.05.2010

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

person Chuck    schedule 03.05.2010