关于tinyxml的剖析及遍历

本文介绍了TinyXML,一个轻量级的C++ XML解析器,用于构建DOM树。通过剖析example.xml文档,展示了TinyXML如何将XML转换为对象模型,包括TiXmlBase、TiXmlNode、TiXmlDocument等类的用途。并提供了遍历XML文件的代码示例,解析XML元素和属性。
摘要由CSDN通过智能技术生成

之前在学习xml文本解析,发现一个比较好用的开源程序,tinyxml,在这里分享一下tinyxml的原理跟XML文件的遍历操作。

TinyXML是一个简单的,轻量级的,由C++实现的XML文档的解析器,它可以被其它程序方便地集成进去使用

关于tinyxml的剖析:

下面是名为 example.xml的文档,后续的剖析都会以这个xml文档为例:

example.xmlexample.xml

(1)tinyxml把xml文档建立成一棵DOM(Document Object Model)树,具体实现用的是firstchild–nextsibling tree,下面是对该树的模型的一个简单介绍:

firstchild-nextsibling是一种多叉树常用的实现方法,每个结点只需要知道它的第一个孩子结点(first child node)和它的下一个兄弟结点(next sibling node),这样一整棵树的结构就会建立起来,也可以用根结点的指针为起点来对整棵树进行遍历。在tinyxml中,每个结点保存了它的first child, last child,  next sibling, previous sibling, parent这五个与它相关的结点的指针,这样便可提供更加方便的遍历接口。下面是对上面的example.xml的内容所建立的DOM树

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值