Как войти в систему nsxmlparser - PullRequest
0 голосов
/ 08 января 2010

Я анализирую xml из URL,

 rssParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL];
[rssParser parse]

Как NSLog это так, чтобы увидеть XML в консоли ??? Если я использую

NSLog ("%@",rssParser);

В консоли мне показывается «XMLParser x 4d562»

Ответы [ 2 ]

2 голосов
/ 08 января 2010

Вы должны установить делегат парсера и обработать полученные XML-данные в его методах. См. NSXMLParserDelegate справочник протокола.

1 голос
/ 08 января 2010

Вы не можете. Класс NSXMLParser никогда не загружает все содержимое потока XML в память одновременно (поэтому это «NSXMLParser», а не «NSXMLDocument»). Вам следует загрузить данные с URL-адреса и использовать их для создания экземпляра вашего парсера RSS, а также для создания строки NSSt, которую вы регистрируете вместо этого:

NSData *data = [NSData dataWithContentsOfURL:xmlURL];
rssParser = [[NSXMLParser alloc] initWithData:data];
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"data: %@", string);
[string release];

Обратите внимание на тот факт, что методы initWithContentsOfURL: являются синхронными и блокируют ваш поток пользовательского интерфейса до тех пор, пока данные не будут загружены. Возможно, вы захотите использовать ASIHTTPRequest или механизм NSURLConnection вместо этого с асинхронными соединениями.

...