Qt读取XML结构

Qt读取XML结构

问题描述:

我正在使用Qt5.5,我想将XML文件读入内存,维护节点和关系的结构和属性。Qt读取XML结构

到目前为止,我一直在使用QXmlStreamReader,但是这并没有真正做太多,我也看不到任何明显的方式来构建节点之间的关系。

我最终想要的是将XML读取到链接列表中,其中根节点与根节点xml节点相同,其他节点是此节点的子节点。

经过一番探索,我找到了QDomDocument和QDomElement,但是为了使用这些'.pro'文件必须被修改并且xml应该被追加到QT行。

+2

你有没有考虑过使用'QDomDocument'? –

+0

现在就看看这个...... QtomElement和QDomDocument在Qt5.5中可用吗? – SPlatten

+0

用google搜索“qt5 qdomdocument”可以找到很少的结果...... – hyde

你想要的是一个DOM解析器。它提供了XML数据的树状模型(Document Object Model),您可以遍历,修改和存储到文件中。

QXmlStreamReader提供了一个类似于SAX解析器的非常简单的接口。如果您只需从XML文本文本中提取数据,则可能就足够了。 (为了编写简单的XML,还有一个QXmlStreamWriter)。 这两个类都包含了Qt核心模块

中如果你需要一个更强大的XML解析器,Qt的XML模块提供了一个真正的SAX解析器(QXmlSimpleReader)和DOM解析器(QDomDocument)。您可以通过在pro-file中添加qt += xml来激活qmake项目。