парсинг и форматирование разных rss pubdate - PullRequest
1 голос
/ 26 мая 2011

Я создаю универсальную программу чтения каналов, и мне нужно отформатировать rss pubDate, но rss pubdate всегда отличается, например:

    Wed, 25 May 2011 02:10:00 CEST
    Wed, 25 May 2011 18:54:26 +00:00
    Wed, 25 May 2011 08:13:22 +0000
    Wed, 25 May 2011 14:21:54 GMT
    26 May 2011 10:32:00 +0100

Я пытался использовать этот код:

NSString *dateString = @"Wed, 25 May 2011 18:54:26 +00:00"; 
NSDateFormatter *df = [[[NSDateFormatter alloc] init] autorelease];
[df setDateFormat:@"EEE, dd MMMM yyyy HH:mm:ss +00:00"];

NSLocale *enLocale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]   autorelease];
[df setLocale:enLocale];

NSDate *date = [df dateFromString:dateString];  
NSLog(@"'%@' = %@", dateString, date);

NSDateFormatter* df2 = [[[NSDateFormatter alloc] init] autorelease];
[df2 setDateFormat:@"EEE, dd MMMM yyyy HH:mm:ss"];
NSString *dateString2 = [df2 stringFromDate:date];

Этот код, однако, работает только с одним типом rss pubDate, как можно решить эту проблему ?? как можно создать универсальный формататор даты ??

1 Ответ

0 голосов
/ 26 мая 2011

pubDate в формате даты, поэтому вы используете тот же формат в своем коде, чтобы отразить формат в формате pubDate.

EEE, dd MMMM yyyy HH:mm:ss +00:00 равно puDate: Wed, 25 May 2011 18:54:26 +00:00

Вам просто нужно компенсировать формат даты, сохраненный в pubDate .

...