使用tinyxml向xml文件中插入数据

devtools/2024/9/22 18:08:43/
xmlns="http://www.w3.org/2000/svg" style="display: none;">

目前已有一个xml文件,内容如下所示。想要在这个文件中间插入一个数据。tinyxml库比较好用。
在这里插入图片描述

xml_2">1.下载tinyxml库文件并添加进工程

在网上下载好tinyxml的库文件,然后放入项目目录中
在这里插入图片描述在qt工程中点击【添加现有文件】,把这6个文件添加进来

在这里插入图片描述

2.使用库文件

(1)在h文件引用tinyxml.h

#include "./tinyXML/tinyxml.h"

(2)在cpp文件中使用

void MainWindow::addElement()
{TiXmlDocument* xmlDocument = new TiXmlDocument();if(!xmlDocument->LoadFile("E:/QT_project/tinyxml_test/test.xml")) //如果找不到xml文件{qDebug() << xmlDocument->ErrorDesc();qDebug() << "找不到XML文件" ;}//查找xml文件中第一个名为“学生信息”的节点TiXmlElement* rootElement = xmlDocument->FirstChildElement("学生信息");if(rootElement == nullptr) //如果不存在“学生信息”的节点{qDebug() << xmlDocument->ErrorDesc();delete xmlDocument;return;}if(rootElement)  // 如果存在“学生信息”的节点{//在此节点下新创建一个节点并链接TiXmlElement* xmlElement = new TiXmlElement("学生序号");rootElement->LinkEndChild(xmlElement); //创建一个显示“姓名”的节点TiXmlElement* childElement = new TiXmlElement("姓名");xmlElement->LinkEndChild(childElement);TiXmlText* xmlText = new TiXmlText("张鹏");childElement->LinkEndChild(xmlText);//创建一个显示“年龄”的节点childElement = new TiXmlElement("年龄");xmlElement->LinkEndChild(childElement);xmlText = new TiXmlText("25");childElement->LinkEndChild(xmlText);}xmlDocument->SaveFile(); // 保存delete xmlDocument;
}

(3)运行结果
在这里插入图片描述
完整的QT工程我放在gitee里了,欢迎自取,给个star


http://www.ppmy.cn/devtools/102987.html

相关文章

【精选】计算机毕业设计之:基于springboot汽车租赁系统

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

制作招商宣传片视频时,文案和脚本包含的要素有哪些?

对于做招商加盟的品牌方来说&#xff0c;一个好的宣传片&#xff0c;可以很直观的传递公司的理念和价值&#xff0c;让潜在客户明白公司优势。 我本人有一家酸奶店&#xff0c;我自己招商了100多家&#xff0c;而且曾经我还有一家传媒公司&#xff0c;就是做宣传片的&#xff…

如何选择合适的项目管理软件?国内软件精选推荐

在项目管理过程中&#xff0c;合适的项目管理软件可以极大地提升团队的效率和项目的成功率。然而&#xff0c;面对市场上琳琅满目的项目管理软件&#xff0c;如何做出最佳选择&#xff0c;成为了每个企业项目管理者都需要面对的重要问题。今天我们就来详细探讨如何选择适合的项…

Unity 不规则进度条显示

using System.Collections; using System.Collections.Generic; using System.Text; using TMPro; using UniRx; using UnityEngine; using UnityEngine.UI; public class Power : MonoBehaviour { //功率百分比 [SerializeField] private TextMeshProUGUI PowerValueText; //…

cesium 发光线

发光线也是一种比较常见的可视化效果&#xff0c;cesium 内置的材质已经提供了PolylineGlowMaterialProperty类&#xff0c;实现了发光效果。这种材质在线的中间部分始终会有白色线条&#xff0c;如果想实现纯色的发光线&#xff0c;就需要对这种材质进行改造。本篇通过自定义M…

JMeter之上传文件同时带有参数

文章目录 业务场景使用坑 业务场景 针对下述接口构建jmeter测试&#xff0c;这是个post接口&#xff0c;在上传文件file的同时指定变量groupId的值 PostMapping("/importExcel")public ApiResultDto<String> importExcel(TagChildrenImportDto importDto) {Sec…

苹果9月10将招开发布会:iPhone 16搭配AI将颠覆你的数码生活

iPhone 就在即将到来的9月10日&#xff0c;苹果将在加利福尼 iPhone 亚州库比蒂诺的总部举办一场名为"高光时刻"的特别活动。这场发布会将揭晓最新的 iPhone 16 系列和苹果公司在 AI 领域的野心和实力。 Apple Intelligence iPhone 16 系列无疑是此次发布会的重头戏。…

vue项目中解决el-table数据过多导致页面卡顿问题

需要用到umy-ui库&#xff0c;umy-ui库中的table表格组件,它不造轮子。它改造了element-ui等等库的表格组件。 umy-ui官网&#xff1a;umy-ui开发文档 - 为开发者准备的基于 Vue 2.0 的桌面端组件库&#xff0c;完美解决表格万级数据渲染卡顿问题 (umyui.com) 1. 安装&#xff…