2010-05-10 4 views
1

Я пытаюсь получить NSDate из строки, но ее возвращающий нуль. Я попытался это:Проблема NSDateFormatter

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-mm-dd'T'HH:mm:ss'Z'"]; 
NSDate *date = [dateFormatter dateFromString:@"2010-05-07T10:12:32UTC"]; 
NSLog(@"Success date=%@",[date description]); 

Благодаря

ответ

1

Ваша строка формата даты ожидает окончания даты с буквами Z. Но ваша дата заканчивается строкой UTC. Есть несколько способов исправить это.

  1. Изменить формат даты на @"yyyy-mm-dd'T'HH:mm:ss'UTC'".
  2. Или измените строку даты на @"2010-05-07T10:12:32Z".

Или вы можете изменить строку формата даты на: @"yyyy-mm-dd'T'HH:mm:ssz". Это распознает некоторые общие 3-буквенные названия часовых поясов, такие как PDT для Pacific Daylight Time. К сожалению, однако, он не будет распознавать UTC как имя часового пояса (вам нужно будет использовать «GMT»).

0

'Z' Буквальное не будет соответствовать строке UTC.

Смежные вопросы