Qt读写xml文件

Posted 程序员成长日志

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt读写xml文件相关的知识,希望对你有一定的参考价值。

写xml

<root>    <element>        <sub id=-1></sub>    </element></root>
//添加xml说明 QDomDocument doc; QDomProcessingInstruction instru; instru = doc.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"UTF-8\""); doc.appendChild(instru);//添加根节点 QDomElement root = doc.createElement("root"); doc.appendChild(root); root.setAttribute("ver", "1.0.0"); //添加元素  QDomElement elementNode= doc.createElement(" element");  QDomElement subNode= doc.createElement("sub");  subNode.setAttribute("id""-1");    elementNode.appendChild(subNode);  root.appendChild(elementNode);//写文件 QFile file(fileName); file.open(QIODevice::WriteOnly | QIODevice::Truncate); QTextStream out(&file); doc.save(out, 4); file.close();}

读xml

QDomDocument doc;//读取xml文件到QDomDocument 对象中 QFile file(fileName); if (!file.open(QIODevice::ReadOnly)) return false; if (!doc.setContent(&file)){ file.close(); return false; } file.close();//找到对应节点 QDomElement rootEle = doc.documentElement(); if ("root" != rootEle.nodeName()) return false; if ("1.0.0" != rootEle.attribute("ver")) return false;  QDomNodeList subList= doc.elementsByTagName("sub"); for (int index = 0; index != subList.size(); ++index){ QDomNode node = subList.at(index);    if (!node.isElement()) continue; QDomElement subEle= node.toElement();        QString id= subEle.attribute("id");  }


以上是关于Qt读写xml文件的主要内容,如果未能解决你的问题,请参考以下文章

Qt之读写XML文件

Qt Write and Read XML File 读写XML文件

QT xml 读写

DOM解析xml实现读写增删改

Qt读写三种文件,QSettings读ini配置文件,QJsonDocument读JSON文件,QDomDocument读xml文件

如何在qt中添加xml文件