尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Qt写XML文件的步骤
Qt读XML文件的步骤1、首先创建一个xml的文件。// 头文件 #include QFile #include QString #include QDebug // 创建XML文件 QString xmlPath ./template.xml QFile xmlFile(xmlPath) // 判断文件是否存在 if( true xmlPath.exists() ) { qDebug() 文件已存在; // 执行存在的逻辑 } else { qDebug() 文件不存在 // 执行不存在的逻辑 bool isOpen xmlFile.open(QIODevice::WriteOnly); if( true isOpen ) { // 打开成功开始添加xml文件的内容 // 添加完成后记得关闭文件 xmlFile.close(); } else { qDebug() 文件打开失败; } }2、添加XML文件的头部格式? xml version1.0 encodingutf-8 ?// 头文件 #include QDomDocument #include QDomProcessingInstruction #include QTextStream // 创建头部格式 QDomDocument document; QDomProcessingInstruction ins document.createProcessingInstruction(xml, version\1.0\ encoding\utf-8\); document.appendChild(ins); // 写入xml头部格式 QTextStream stream(xmlFile); document.save(stream, 4); // 这里的4代表首行缩进4个字节2、添加根节点root/// 头文件 #include QDomElement // 添加根节点 QDomElement root document.createElement(root); document.appendChild(root);3、添加子节点rootnode attr1属性1 attr2属性2子节点/node/root// 头文件 #include QDomAttr #include QDomText // 添加子节点 QDomElement node document.createElement(node) root.appendChild(node) // 添加属性 QDomAttr attr1 document.createAttribute(attr1); attr1.setValue(QString::fromLocal8Bit(属性1)) node.setAttributeNode(attr1); QDomAttr attr2 document.createAttribute(attr2); attr2.setValue(QString::fromLocal8Bit(属性2)) node.setAttributeNode(attr2); QDomText text document.createTextNode(QString::fromLocal8Bit(子节点)) node.appendChild(text); root.appendChild(node);4、完整代码? xml version1.0 encodingutf-8 ?rootnode attr1属性1 attr2属性2子节点/node/root// 头文件 #include QFile #include QString #include QDebug #include QDomDocument #include QDomProcessingInstruction #include QTextStream #include QDomElement #include QDomAttr #include QDomText int main(int argc, char* argv[]) { // 创建XML文件 QString xmlPath ./template.xml; QFile xmlFile(xmlPath); // 判断文件是否存在 if(xmlFile.exists()) { qDebug() 文件已存在; // 执行存在的逻辑 } else { qDebug() 文件不存在; // 执行不存在的逻辑 bool isOpen xmlFile.open(QIODevice::WriteOnly); if(isOpen) { // 打开成功开始添加xml文件的内容 // 创建头部格式 QDomDocument document; QDomProcessingInstruction ins document.createProcessingInstruction(xml, version\1.0\ encoding\UTF-8\); document.appendChild(ins); // 添加根节点 QDomElement root document.createElement(root); document.appendChild(root); // 添加子节点 QDomElement node document.createElement(node); // 添加属性 QDomAttr attr1 document.createAttribute(attr1); attr1.setValue(QString::fromLocal8Bit(属性1)); node.setAttributeNode(attr1); QDomAttr attr2 document.createAttribute(attr2); attr2.setValue(QString::fromLocal8Bit(属性2)); node.setAttributeNode(attr2); // 添加文本 QDomText text document.createTextNode(QString::fromLocal8Bit(子节点)); node.appendChild(text); root.appendChild(node); // 写入xml头部格式 QTextStream stream(xmlFile); stream.setCodec(UTF-8); // 设置输出编码为 UTF-8 document.save(stream, 4); // 这里的4代表首行缩进4个字节 // 添加完成后关闭文件 xmlFile.close(); qDebug() XML文件创建成功; } else { qDebug() 文件打开失败; } } return 0; }
RELATED

相关推荐

WordPress 7.1.2 紧急发布:修复严重远程代码执行漏洞(CVE-2026-87902)

WordPress 7.1.2 紧急发布:修复严重远程代码执行漏洞(CVE-2026-87902)

这不是危言耸听。就在9月22日,WordPress官方紧急发布了7.1.2版本,修复了一个被评定为"严重"级别的核心安全漏洞,编号CVE-2026-87902,CVSS评分高达9.2分(满分10分)。更棘手的是,从4.7.…

📅 2026/9/24 14:09:58
Debian 12 无线网卡驱动与固件安装完全指南:Realtek 与 Intel 网卡排查

Debian 12 无线网卡驱动与固件安装完全指南:Realtek 与 Intel 网卡排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/24 14:09:58
安国AU89103主控U盘量产修复:从暴力开盘到低级格式化实战

安国AU89103主控U盘量产修复:从暴力开盘到低级格式化实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📅 2026/9/24 14:09:58
MORE NEWS

更多资讯

📰

装机容量不是调节能力:虚拟电厂需要一张动态能力账本

数能深度观察 第 02 期 一张资源清单只能说明“接入了什么”,不能证明“此刻能调多少”。真正能够进入市场、接受调度并形成收益的,是带有方向、功率、持续时间、响应速度和可信度的动态能力。 资源决定上限,能力决定承诺。 栏目分类 系统产…

📰

OSS-Fuzz 项目基础设施(infra)完全指南:base-images 镜像体系与 helper.py 自动化命令详解

网络安全开发工具CI/CD 【免费下载链接】oss-fuzz OSS-Fuzz - continuous fuzzing for open source software. 项目地址: https://gitcode.com/gh_mirrors/oss/oss-fuzz 点击查看 免费下载 本文以 OSS-Fuzz 仓库的 infra/README.md 为骨架,深入剖析其两…

📰

在 Hive Multi-Agent 中集成 Zendesk:基于 MCP 的工单管理与搜索实战指南

人工智能AI Agent多智能体MCP 服务工具调用浏览器控制 【免费下载链接】hive Multi-Agent Harness for Production AI 项目地址: https://gitcode.com/gh_mirrors/hive48/hive 点击查看 免费下载 Zendesk Tool 是 Hive 仓库中 Aden Tools 套件的一员,它…

📰

AI时代职业规划指南:从焦虑到行动,构建你的不可替代性

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

使用 Vagrant 在 Linux 虚拟机中运行 ramsey/uuid 测试套件

使用 Vagrant 在 Linux 虚拟机中运行 ramsey/uuid 测试套件 【免费下载链接】uuid :snowflake: A PHP library for generating universally unique identifiers (UUIDs). 项目地址: https://gitcode.com/gh_mirrors/uui/uuid ramsey/uuid 是一套 PHP 的通用唯一标识符&a…

📰

企业大模型数字底座落地方案:架构设计、模型选型与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬