XML语言数据读写理解3

首先先把我们要读取的xml文件搞上来:
`






















`
我们简单看一下用浏览器显示的这个数据的结构:

image.png

可以说这个XML的层次以及较为复杂了,已经比得上很多应用程序的数据结构复杂度了,那么我们就尝试一点一点将这个程序解析出来。注意第二行的。与设置显示有关,这里就懒得处理了。不用管它,删掉也行。

    首先,排除掉上一节讲的前两行,然后我们看到了一个ROOT节点,要注意的是,任何XML文件的根节点只能有一个!!也就是说,如果你这么写:

……

……

……

……

使用浏览器或者任何常规的解析器就会解析错误,因为没有根节点(如果最大范围的节点有两个,它就不再是根节点了,而是普通节点,例如ROOT 和 ROOT2,同为最大范围的节点,遍都不再是根节点了。)

利用上一节我们的程序读取了前两行版本信息以后,使用下面的程序,
复制代码

//读取根元素 QDomElement root = xml.documentElement(); dw->addContents("["+root.tagName()+"]"); dw->addContents("");//再隔开一行 //注意上一节提到过,dw->addContents(QString)是用来调试显示结果用的程序,每次调用都换一行显示

一看就知道,首先先把第一个子节点找出来,然后转为元素 (就是里面有数据的结构,当然这里的节点Mode和Mode2里面还是节点,所以并不算一个元素)。

然后再把子节点的名字打印出来,然后转到下一个节点。最后的打印效果如下:

[Mode]
[Mode2]

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享