本程序已经极度精简了,

运行截图如下:

代码如下:

#include <QApplication>
#include <QXmlStreamWriter>
#include <QDebug>
#include <QFile>int main(int argc, char *argv[])
{QApplication a(argc, argv);QFile file("my.xml");if (!file.open(QFile::ReadWrite|QIODevice::Truncate)){qDebug() << "Error: cannot open file";return 1;}QXmlStreamWriter stream(&file);stream.setAutoFormatting(true);stream.writeStartDocument();stream.writeStartElement("最外层");stream.writeTextElement("结点一", "哆啦A梦");stream.writeTextElement("结点二", "蜡笔小新");//第一个stream.writeStartElement("内一层");stream.writeTextElement("姓名", "球球");stream.writeTextElement("照片文件", "C:\\xxx.txt");stream.writeTextElement("家庭关系文件", "C:\\xxx.data");stream.writeTextElement("是否有宠物","有个鸡儿");stream.writeTextElement("月工资","13999");stream.writeTextElement("有几个男朋友","1");stream.writeStartElement("车有几个轮子");stream.writeAttribute("include", "1");stream.writeTextElement("前男友文件", "C:\\xxxx.xml");stream.writeEndElement();stream.writeEndElement();//第二个stream.writeStartElement("内一层");stream.writeTextElement("姓名", "球球");stream.writeTextElement("照片文件", "C:\\xxx.txt");stream.writeTextElement("家庭关系文件", "C:\\xxx.data");stream.writeTextElement("是否有宠物","有个鸡儿");stream.writeTextElement("月工资","13999");stream.writeTextElement("有几个男朋友","1");stream.writeStartElement("车有几个轮子");stream.writeAttribute("include", "1");stream.writeTextElement("前男友文件", "C:\\xxxx.xml");stream.writeEndElement();stream.writeEndElement();stream.writeEndDocument();file.close();qDebug() << "write finished!";return a.exec();
}

Qt工作笔记-对QXmlStreamWriter进一步的认识(写复杂的XML文件)相关推荐

  1. Qt工作笔记-undefined reference to `vtable for MyObject'及对moc文件的进一步理解

    源码如下: main.cpp #include <QApplication> #include <QObject> #include <QTextCodec>cla ...

  2. Qt工作笔记-QMap的进一步操作

    QMap可以放如下类型的数据(key里面放一个类) clear前,内部数据析构后 代码如下: #include <QApplication> #include <QMap> # ...

  3. Qt工作笔记-保存textEdit中的数据,并自动打开文件

    功能如标题所示. 程序运行如下: 代码如下: widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include & ...

  4. Qt工作笔记-发送端发送Json格式的数据包,接收端解析数据包

    原理以及运行 原理是因为QJsonDocument提供了一个函数toJson 可以直接把Json数据转成QByteArray,这样就可以直接发送数据包,然后再按照常规方法解析即可,本源码中含解析内容, ...

  5. Qt工作笔记-qmake和uic(对Qt底层的进一步认识)

    目录 背景 以前的认识 今天的认识 背景 今天一大佬问了我个问题,就是uic程序编译ui生成.h文件后改怎么用! 当时我就有点蒙蔽了! 一般情况下来说,qmake会把ui文件生成.h文件,为什么会冒出 ...

  6. Qt工作笔记-对setupUi(this)进一步理解

    今天工作中,在构造函数中忘记了调用setupUi,使得程序中某些指针异常. 如下图的程序,当什么不做的时候,界面是这样的: 当把ui->setupUi(this)注释掉后 这里先看下setupU ...

  7. Qt工作笔记-如何正确使用QXmlStreamReader(学会利用错误提示)

    今天解析一个xml,是有问题的xml,这里模拟下 xml如下,没有声明名称空间却使用了名称空间 <?xml version="1.0" encoding="GBK& ...

  8. Qt工作笔记-QXmlStreamReader中的字符编码的坑

    以本人这篇博文的源码为例: https://blog.csdn.net/qq78442761/article/details/80501909 源码改成如下所示: #include <QAppl ...

  9. Qt工作笔记-把QTableWidget数据存为XML,启动时加载XML

    运行截图如下: 添加好数据后保存: 此时保存的XML,如下图: 程序运行时会加载这些xml文件. 代码如下: widget.h #ifndef WIDGET_H #define WIDGET_H#in ...

最新文章

  1. 多图片每隔2S循环播放
  2. Gps高程拟合matlab代码,几种GPS高程拟合方法分析与比较.doc
  3. 架设httpd服务器
  4. CodeSandbox v3 发布,Web 项目的在线开发
  5. 重新定义“人货场”:淘宝情景计算探索实践
  6. Verilog_寻找最高有效位的位置
  7. 纪中A组模拟赛总结(2021.7.19)
  8. jooq_jOOQ与Hibernate:何时选择哪个
  9. 法律专业计算机基础试卷答案,大学计算机基础试题及答案
  10. iOS小技巧---改变uisearchbar中的cancel按钮的文字、取消clearButton
  11. 制作的LINUX安装软件,竟然导致系统无法启动
  12. 打造高品质Axure组件库,就是这么简单!
  13. 阿铭Linux_网站维护学习笔记201903026
  14. 您知道这是什么的,对吧!
  15. 最新版QQ机器人搭建保姆教程,保熟【最新beta2版本】
  16. c语言 gets getc,6.16 C语言,getchar gets getc有什么区别 分别是表示什么的
  17. LOJ#2155. 「POI2011 R1」同谋者 Conspiracy
  18. 解决新电脑开机无法跳过联网(找不到网络控制流进程)
  19. FFMPEG使用 frei0r 给视频添加马赛克效果
  20. 一句话系列:姓名模糊匹配算法

热门文章

  1. 让皮肤美白细致的七大DIY - 生活至上,美容至尚!
  2. Base64编码及其作用
  3. 【转】牛人杰作 管饭哥登场
  4. 只能是做的HTML5审批流项目
  5. 程序员看不起事业单位员工:一年收入才4万?网友:40岁再比一比,究竟谁更牛逼!!
  6. 一个程序员转产品经理的经验分享
  7. 预测:小程序入口预测汇总(8种可能)
  8. 第十八节:教你如何使用ES6的Promise对象
  9. mysql 页面跳转_Springboot+MyBatis+mysql+jsp页面跳转详细示例
  10. badboy设置中文_[转载]Badboy使用教程