如何记录nsxmlparser

时间:2010-01-08 11:16:39

标签: iphone nsxmlparser

我正在通过

解析网址中的xml
 rssParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL];
[rssParser parse]

如何NSLog它以便在控制台中看到xml ???如果我使用

NSLog ("%@",rssParser);

我在控制台中显示了'XMLParser x 4d562'

2 个答案:

答案 0 :(得分:2)

您应该在其方法中设置解析器的委托并处理检索到的xml数据。请参阅NSXMLParserDelegate协议参考。

答案 1 :(得分:1)

你做不到。 NSXMLParser类永远不会立即在内存中加载XML流的全部内容(这就是为什么它是“NSXMLParser”而不是“NSXMLDocument”)。您应该从URL下载数据,并使用它来实例化您的RSS解析器,并创建一个您记录的NSString:

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

请注意“initWithContentsOfURL:”方法是同步的,并且会阻止您的UI线程,直到数据下载完毕。您可能希望使用ASIHTTPRequest或NSURLConnection机制,使用异步连接。