qt中如何解析不固定格式的xml文件

 时间:2024-10-30 19:36:18

1、QtXml模块提供了一个读写XML文件的流,解析方法包含DOM和SAX。DOM(Document ObjectModel):将XML文件表示成一棵树,便于随机访问其中的节点,但消铩苔愀躇耗内存相对多一些。SAX(Simple APIfor XML):一种事件驱动的XML API,接近于底层,速度较快,但不便于随机访问任意节点。 使用XML模块,在.pro文件中添加QT += xml,并加如相应的头文件#include <QDomDocument>或者#include <QXmlStreamReader>。

qt中如何解析不固定格式的xml文件

2、 QDomDocument类代表整个的XML文件。概念上讲:它是文觇致惯鸹档树的根节点,并提供了文档数据的基本访问方法。由于元素、文本节点、注释、指令执行等等不可能脱离一个文档的上下文,所以文档类也包含了需要用来创建这些对象的工厂方法。被创建的节点对象有一个ownerDocument()函数,它将对象与对象常见的文档上下文环境关联起来。DOM类中最常使用的是QDomNode、QDomDocument、QDomElement和QDomText。

qt中如何解析不固定格式的xml文件

3、解析后的XML文件在内部是通过一个对象树来表示的,对象树可以使用各种QDom类进行访问。所有的QDom类只引用内部树上的对象。一旦最后一个DOM树的QDom对象和QDocument本身被删除掉时,DOM树上的所有内部对象会被删除掉。元素、文本节点等的创建是通过使用类提供的各种工厂方法完成的。使用QDom类的缺省构造函数只会生成空的对象,这些空的对象不能操作,也不能写入到文档中。

qt中如何解析不固定格式的xml文件

4、 QDomDocument::setContent()完成XML文档的设置,他从QFile对象中读取XML数据并检测XML文档的编码。setContent()有几种重载形式,可以分别从QByteArray、QString、QIODevice、QXmlInputSource中读取XML数据。(1)domdocument.h

qt中如何解析不固定格式的xml文件

5、 常见C/C++ XML解析器有tinyxml、XERCES、squashxml、xmlite、pugxml、libxml等等,这些解析器有些是支持多语言的,有些只是单纯C/C++的。

qt中如何解析不固定格式的xml文件

6、这个解析器在国内似乎少人使用,这个解析器也有些历史了。squashXML基于DOM Level2,也是一个XML轻量级的解析器。天缘之所以把这个写上是天缘比较看重这个解析器的目录划分及使用说明,易懂而且易上手。(4)XMLBooster解析器

qt中如何解析不固定格式的xml文件
  • 亿图图示矢量文本怎么添加
  • word之编号和换行
  • word中如何控制文本字数
  • Visual Studio 2017 Community连接到Mysql
  • word2019按Insert键无法切换到改写模式怎么办
  • 热门搜索
    抗病毒手抄报图片 低碳生活我先行手抄报 社会主义价值观手抄报 端午节手抄报内容30字 法制手抄报图片大全 法律手抄报内容 元宵手抄报简单又漂亮 元宵节手抄报 一等奖 关于重阳节的手抄报简单又漂亮 抗美援朝手抄报简单又漂亮