iOS的轻量级XML解析库 TBXML
fmms
13年前
<p>TBXML是一个用于iOS上的解析速度非常快的轻量级XML解析库。提供了非常简洁的接口,使用起来很简单。</p> <p>它提供了可以通过文件路径、URL、XML文件内容、内容字符串等方式载入XML文件,提供了获取XML节点和属性值的方法,以及一个遍历节点的方法。不过TBXML只提供了读的功能。</p> <p><strong>初始化和释放TBXML</strong></p> <p>TBXML* tbxml =[ [[TBXML alloc] initWithXMLFile:@"file.xml"] retain];</p> <p>一定要在后面加上retain,要不运行app时,会出现非法访问的错误。</p> <p>使用完毕后,注意释放:</p> <p>[tbxml release];</p> <p><strong>使用递归方法遍历所有节点和属性的例子</strong></p> <p></p> <pre class="brush:cpp; toolbar: true; auto-links: false;">- (void) traverseElement:(TBXMLElement *)element { do { // 显示XML元素名称 NSLog(@"%@",[TBXML elementName:element]); // 获取到当前节点的第一个属性 TBXMLAttribute * attribute = element->firstAttribute; // if attribute is valid while (attribute) { // 在log窗口中显示属性的名称和值 NSLog(@"%@->%@ = %@",[TBXML elementName:element],[TBXML attributeName:attribute], [TBXML attributeValue:attribute]); // 获取下一个属性 attribute = attribute->next; } // 递归遍历下一个子元素 if (element->firstChild) [self traverseElement:element->firstChild]; // 获取同级元素 } while ((element = element->nextSibling)); }</pre> <p><strong>项目主页:</strong><a href="http://www.open-open.com/lib/view/home/1326072589953" target="_blank">http://www.open-open.com/lib/view/home/1326072589953</a></p> <p></p>