iPhone SDK NSString в NSDate - PullRequest
       23

iPhone SDK NSString в NSDate

9 голосов
/ 12 апреля 2010

Я получил строку при разборе XML-файла, который выглядит следующим образом: Пт, 09 апреля 2010 00:00:45 +0200 и соответствующий шаблон должен быть «EEE, дд МММ гггг ЧЧ: мм: сс ZZ», но я получаю (ноль)

Это мой код:

NSString *dateString = @"Fri, 09 Apr 2010 00:00:45 +0200";

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];
NSLog(@"date:%@",date); // result date:(null)

Edit:

Теперь это работает для меня, мне пришлось переключиться на локали en-US:

NSLocale* usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en-US"];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

[dateFormatter setLocale:usLocale];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

NSDate *date = [dateFormatter dateFromString:dateString];

1 Ответ

9 голосов
/ 12 апреля 2010

Ваш код работал для меня, когда я изменил эту строку:

[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZ"];

к этой строке:

[dateFormatter setDateFormat:@"EEE',' dd MMM yyyy HH:mm:ss ZZ"];
...