Qt DomDoucment方式读写 xml文件
来源:互联网 发布:工资查询软件 编辑:程序博客网 时间:2024/06/15 04:17
一、包含的基本头文件
#include <QString>
#include <QFile>
#include <QDomDocument>
#include <QTextStream>
#include <QObject>
二、基本操作
1.写xml文件
1).创建根节点:QDomElement root = doc.documentElement("rootName " );
2).创建元素节点:QDomElement element = doc.createElement("nodeName");
3).添加元素节点到根节点:root. appendChild(element);
4).创建元素文本:QDomText nodeText=doc.createTextNode("text");
5).添加元素文本到元素节点:element. appendChild(nodeText);
2.读xml文件
1).读取根节点:QDomElement root = doc.documentElement();
2).读取第一个子节点:QDomNode node = root.firstChild();
3).读取下一个子节点:node = node.nextSibling();
4).匹配结点标记:node.toElement().tagName() == "note"
#include <QString>
#include <QFile>
#include <QDomDocument>
#include <QTextStream>
#include <QObject>
二、基本操作
1.写xml文件
1).创建根节点:QDomElement root = doc.documentElement("rootName " );
2).创建元素节点:QDomElement element = doc.createElement("nodeName");
3).添加元素节点到根节点:root. appendChild(element);
4).创建元素文本:QDomText nodeText=doc.createTextNode("text");
5).添加元素文本到元素节点:element. appendChild(nodeText);
2.读xml文件
1).读取根节点:QDomElement root = doc.documentElement();
2).读取第一个子节点:QDomNode node = root.firstChild();
3).读取下一个子节点:node = node.nextSibling();
4).匹配结点标记:node.toElement().tagName() == "note"
5).读取节点文本:no = childNode.toText().data();
#include <QCoreApplication>#include <QString>#include <QFile>#include <QDomDocument>#include <QTextStream>#include <QObject>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QFile file("class.xml"); file.open(QIODevice::WriteOnly); QDomDocument doc; QDomProcessingInstruction instruction; instruction = doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); doc.appendChild(instruction); QDomElement root = doc.createElement("class"); doc.appendChild(root); QDomAttr class_attr = doc.createAttribute("name"); class_attr.setValue("class_one"); root.setAttributeNode(class_attr); QDomText text; QDomElement student1 = doc.createElement("student"); QDomAttr student1_attr = doc.createAttribute("id"); student1_attr.setValue("1"); student1.setAttributeNode(student1_attr); QDomElement student2 = doc.createElement("student"); student2.setAttribute("id","2"); text = doc.createTextNode("meng"); student2.appendChild(text); QDomElement student3 = doc.createElement("student"); QDomElement student4 = doc.createElement("student"); root.appendChild(student1); root.appendChild(student2); root.appendChild(student3); root.appendChild(student4); QTextStream out(&file); doc.save(out, 4); file.close(); return a.exec();}
#include <QCoreApplication>#include <QString>#include <QFile>#include <QDomDocument>#include <QTextStream>#include <QObject>#include <QDebug>int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QFile file("class.xml"); if(!file.open(QIODevice::ReadOnly)) { qDebug()<<"open for read error"; } QString errorStr; int errorLine; int errorColumn; QDomDocument doc; if(!doc.setContent(&file, false, &errorStr, &errorLine, &errorColumn)) { qDebug()<<" setcontent error"; file.close(); } file.close(); QDomElement root =doc.documentElement(); QDomNode node = root.firstChild(); while(!node.isNull()) { if(node.isElement()) { QDomElement element = node.toElement(); qDebug()<<qPrintable(element.tagName())<<qPrintable(element.attribute("id")) <<qPrintable(element.text()); } node = node.nextSibling(); } return a.exec();}
- Qt DomDoucment方式读写 xml文件
- Qt使用流方式 读写xml文件
- QT DOM的方式读写Xml文件
- Qt:用Dom方式读写xml文件
- QT读写XML文件之DOM方式解析XML
- Qt 读写XML文件
- QT 读写Xml文件
- Qt读写XML文件
- qt读写xml文件
- Qt 读写xml文件
- QT XML文件的读写
- Qt读写xml文件实例
- QT QDomDocument 读写XML文件
- QT读写xml文件示例
- Qt中读写xml文件
- DOM方式读写XML文件
- Delphi 读写XML文件方式
- qt读写XML资料[DOM方式]
- UVa:103 Stacking Boxes
- 易信一出,中国移动更加尴尬
- 测试人员绩效评估方法
- public、private、protect、friendly
- 企业如何选择自己的BI工具
- Qt DomDoucment方式读写 xml文件
- ZOJ 2412 Farm Irrigation
- ViewPager 滑动切换 activity
- cocos2d-x win32移植到android
- Windows下编辑的txt在linux下乱码的解决办法
- 用封装的方法实现从文件夹名下所有的指定类型文件数据导入到数据库
- box2d弹球 cocos2d-x重力感应(cocos2d-x2.1)
- Seoul 2006 / UVa 1368 DNA Consensus String (字符串处理)
- iOS 实现集成话分享