libxml2示例(带包装器)

时间:2011-01-18 19:22:26

标签: iphone objective-c parsing libxml2 nsxml

我正在使用XML解析器libxml2和页面上给出的包装器 http://cocoawithlove.com/2008/10/using-libxml2-for-parsing-and-xpath.html

但我不确定我是否正确使用并且遇到错误(解析等)

有人可以请我提供一个完整的例子,如果我做错了,我可以参考并了解。

非常感谢你提前得到的所有帮助。

1 个答案:

答案 0 :(得分:2)

我也在使用这种方法来解析xml和html文件。 例如,解析rss xml:

//add xml source
NSURL *url = [NSURL URLWithString:@"http://feeds.bbci.co.uk/news/rss.xml?edition=int"];     
NSData *xmlData = [NSData dataWithContentsOfURL:url];

//parse the whole file with all tags
NSArray *rssFeedArray = PerformXMLXPathQuery(xmlData, @"//*");
NSLog(@"rssFeedArray: %@", rssFeedArray);

// * - query表示解析器将遍历文件的所有标记。然后记录数组以查看xml的整个结构。

whith'/ rss / channel / item'查询只会获得item标签元素,(或者只获取第一项使用'/ rss / channel / item [1]')。

在这种情况下,由于bbc Feed结构,您可以在

处捕获每个项目标题
[[[[rssFeedArray objectAtIndex:i] valueForKey:@"nodeChildArray"] objectAtIndex:0] valueForKey:@"nodeContent"]]

的描述
[[[[rssFeedArray objectAtIndex:i] valueForKey:@"nodeChildArray"] objectAtIndex:1]valueForKey:@"nodeContent"]]

然后继续。