qt xml组包_Qt-操作xml文件

该博客介绍了如何使用Qt库进行XML文件操作,包括创建XML文件,追加元素以及按ID读取信息。通过示例代码展示了如何创建XML文档、向文件追加学生信息以及根据ID读取学生详细信息。
摘要由CSDN通过智能技术生成

1 #include "widget.h"

2 #include "ui_widget.h"

3 #include

4 #include

5 #include

6

7 Widget::Widget(QWidget *parent) :8 QWidget(parent),9 ui(newUi::Widget)10 {11 ui->setupUi(this);12

13 QString file_path = "../demo.xml";14

15 create_xml(file_path);16

17 QStringList list;18 //姓名 性别 年龄 学课 分数

19 list << "xiaoming" << "male" << "19" << "Chinese" << "78";20 append_xml(file_path, 1, list);21 list.clear();22 list << "xiaohong" << "famale" << "18" << "Math" << "88";23 append_xml(file_path, 2, list);24 list.clear();25 read_xml(file_path, 2, list);26 qDebug() <

29 Widget::~Widget()30 {31 deleteui;32 }33

34 /*

35 * 创建xml文件,空文件,仅包含头部信息和根元素节点36 * 参数file_path:文件存放路径37 */

38 voidWidget::create_xml(QString file_path)39 {40 QFile file(file_path); //关联文件名字

41 if (true == file.exists()) { //如果存在不创建

42 qDebug() << "文件已经存在";43 return;44 }45 //只写方式打开文件

46 bool isOK =file.open(QIODevice::WriteOnly);47 if (false ==

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用QtQtCore和QtXml模块来读写XML文件。下面是一个简单的示例代码,展示了如何使用Qt读取XML文件写入XML文件: ```cpp #include <QtXml/QtXml> #include <QtCore/QFile> #include <QtCore/QIODevice> int main() { // 读取XML文件 QFile file("example.xml"); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) { qDebug() << "Failed to open XML file for reading."; return -1; } QDomDocument doc; if (!doc.setContent(&file)) { qDebug() << "Failed to parse XML."; file.close(); return -1; } file.close(); // 遍历XML数据 QDomElement root = doc.documentElement(); QDomNodeList nodes = root.childNodes(); for (int i = 0; i < nodes.count(); i++) { QDomNode node = nodes.at(i); if (node.isElement()) { QDomElement element = node.toElement(); qDebug() << "Element name:" << element.tagName(); qDebug() << "Element value:" << element.text(); } } // 写入XML文件 QFile outputFile("output.xml"); if (!outputFile.open(QIODevice::WriteOnly)) { qDebug() << "Failed to open output XML file."; return -1; } QTextStream stream(&outputFile); doc.save(stream, 4); // 缩进为4个空格 outputFile.close(); return 0; } ``` 上述示例代码首先打开一个XML文件进行读取,然后使用`QDomDocument`类解析XML数据。通过遍历`QDomDocument`对象的子节点,可以获得每个元素的标签名和文本值。最后,将解析后的XML数据保存到新的XML文件中。 请注意,上述代码中使用的XML文件名为"example.xml"和"output.xml",你可以根据自己的需要修改这些文件名。此外,你需要在.pro文件中添加`QT += xml`以包含QtXml模块。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值