QT之excel的读写

news/2024/7/21 7:33:13 标签: qt, excel, 开发语言

QT之excel的读写

    • 1. 读取 Excel 文件
    • 2. 写入 Excel 文件
    • QXlsx是开源第三方库

在 Qt 中,可以使用第三方库来处理 Excel 文件,常用的库包括:

QXlsx:一个基于 Qt 的 Excel 文件处理库,支持读写 Excel 文件。
LibXL:一个商业的 Excel 文件处理库,支持多种编程语言,包括 C++。
OpenXLSX:一个开源的 Excel 文件处理库,支持读写 Excel 文件,支持多种操作系统。
下面以 QXlsx 为例,介绍在 Qt 中读写 Excel 文件的方法:

1. 读取 Excel 文件

#include <QCoreApplication>  
#include <QtCore>  
#include "xlsxdocument.h"  
  
int main(int argc, char *argv[])  
{  
    QCoreApplication a(argc, argv);  
      
    // 打开 Excel 文件  
    QXlsx::Document xlsx("example.xlsx");  
      
    // 获取工作表对象  
    QXlsx::Worksheet *worksheet = xlsx.currentWorksheet();  
      
    // 获取单元格内容  
    QVariant value = worksheet->read("A1");  
    qDebug() << value.toString();  
      
    // 设置单元格内容  
    worksheet->write("A1", "Hello World");  
      
    // 保存文件  
    xlsx.save();  
      
    return a.exec();  
}

在上面的代码中,首先创建了一个 QXlsx::Document 对象,并打开了名为 example.xlsx 的 Excel 文件。然后获取了当前工作表对象,并使用 read 方法获取了 A1 单元格的值,并使用 write 方法设置了 A1 单元格的值。最后调用 save 方法保存文件。

2. 写入 Excel 文件

#include <QCoreApplication>  
#include <QtCore>  
#include "xlsxdocument.h"  
  
int main(int argc, char *argv[])  
{  
    QCoreApplication a(argc, argv);  
      
    // 创建 Excel 文件  
    QXlsx::Document xlsx;  
      
    // 创建工作表对象  
    QXlsx::Worksheet *worksheet = xlsx.createWorksheet("Sheet1");  
      
    // 设置单元格内容  
    worksheet->write("A1", "Hello World");  
      
    // 保存文件  
    xlsx.save("example.xlsx");  
      
    return a.exec();  
}

在上面的代码中,首先创建了一个 QXlsx::Document 对象,并创建了一个名为 Sheet1 的工作表对象。然后使用 write 方法设置了 A1 单元格的值。最后调用 save 方法保存文件。

QXlsx是开源第三方库

Github下载:https://github.com/dbzhang800/QtXlsxWriter
官方文档:http://qtxlsx.debao.me/


http://www.niftyadmin.cn/n/5037658.html

相关文章

多线程知识汇总

IntentService 多线程的应用在Android 开发中是非常常见的&#xff0c;常用方法主要有&#xff1a; 集成Thread类 实现Runnable接口 AsyncTask Handler HandlerThread IntentService IntentService 定义&#xff1a; Android 里的一个封装类&#xff0c;继承四大组件之一 ser…

SQL Server数据库中了360后缀勒索病毒怎么办,勒索病毒解密数据恢复

随着互联网的发展&#xff0c;网络安全问题日益凸显&#xff0c;勒索病毒已经成为当今数字威胁中的一大主要犯罪行为之一。其中&#xff0c;360后缀勒索病毒作为一种常见的数据库攻击形式&#xff0c;对数据库的安全性提出了极大挑战。近期我们收到很多企业的求助&#xff0c;企…

2023最新如何轻松升级、安装和试用Navicat Premium 16.2.10 教程详解

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

Python Opencv实践 - 视频目标追踪CamShift

CamShift是MeanShift的改进&#xff0c;能够动态自适应跟踪目标大小&#xff0c;而不是一个固定窗口。在opencv中使用CamShift进行目标追踪的方法和MeanShift差不多&#xff0c;只需要替换meanShift方法并且使用cv.polylines绘制出结果多边形窗口即可。 参考资料&#xff1a; …

MySQL数据库查缺补漏——基础篇

MySQL数据库查缺补漏-基础篇 基础篇 net start mysql80[服务名] net stop mysql80 create database pshdhx default charset utf8mb4; 为什么不使用utf8&#xff1f;因为其字符占用三个字节&#xff0c;有四个字节的字符&#xff0c;所有需要设置为utf8mb4; 数值类型&…

2023 年和 2024 年人工智能和机器学习会议清单

会议地点日期PyCon 乌干达乌干达坎帕拉2023年9月21日 - 2023年9月23日大数据、数据科学和机器学习世界技术峰会德克萨斯州奥斯汀2023年9月21日 - 2023年9月23日MLCon纽约州纽约市2023年9月25日 - 2023年9月28日2023 年人工智能大会加利福尼亚州旧金山2023年9月26日 - 2023年9月…

linux-crontab每分钟定时执行/定时任务调度

文章目录 一、前言二、crontab概述2.1、crontab命令简介2.2、linux定时任务分类 三、安装crontab四、crontab使用4.1、crontab语法4.2、定时任务设置4.3、定时任务格式4.4 crontab表达式在线验证 五、实例六、定时任务的日志 一、前言 本文讲解linux上如何调用定时任务&#x…

(第十一天)初识SpringMVC SSM框架的学习与应用(Spring + Spring MVC + MyBatis)-Java EE企业级应用开发学习记录

SSM框架的学习与应用(Spring Spring MVC MyBatis)-Java EE企业级应用开发学习记录&#xff08;第十一天&#xff09;初识SpringMVC 今天我们要来学习一下SSM框架的最后一个框架SpringMVC 一、初认SpringMVC 基本概念&#xff1a; ​ Spring MVC&#xff08;Model-View-Co…