一杯清酒邀明月
天下本无事,庸人扰之而烦耳。
posts - 3121,comments - 209,views - 578万

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

  QXlsx:一个基于 Qt 的 Excel 文件处理库,支持读写 Excel 文件。

  LibXL:一个商业的 Excel 文件处理库,支持多种编程语言,包括 C++。

  OpenXLSX:一个开源的 Excel 文件处理库,支持读写 Excel 文件,支持多种操作系统。

下面以 QXlsx 为例,介绍在 Qt 中读写 Excel 文件的方法:

1. 读取 Excel 文件

复制代码
 1 #include <QCoreApplication>  
 2 #include <QtCore>  
 3 #include "xlsxdocument.h"  
 4   
 5 int main(int argc, char *argv[])  
 6 {  
 7     QCoreApplication a(argc, argv);  
 8       
 9     // 打开 Excel 文件  
10     QXlsx::Document xlsx("example.xlsx");  
11       
12     // 获取工作表对象  
13     QXlsx::Worksheet *worksheet = xlsx.currentWorksheet();  
14       
15     // 获取单元格内容  
16     QVariant value = worksheet->read("A1");  
17     qDebug() << value.toString();  
18       
19     // 设置单元格内容  
20     worksheet->write("A1", "Hello World");  
21       
22     // 保存文件  
23     xlsx.save();  
24       
25     return a.exec();  
26 }
复制代码

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

2. 写入 Excel 文件

复制代码
 1 #include <QCoreApplication>  
 2 #include <QtCore>  
 3 #include "xlsxdocument.h"  
 4   
 5 int main(int argc, char *argv[])  
 6 {  
 7     QCoreApplication a(argc, argv);  
 8       
 9     // 创建 Excel 文件  
10     QXlsx::Document xlsx;  
11       
12     // 创建工作表对象  
13     QXlsx::Worksheet *worksheet = xlsx.createWorksheet("Sheet1");  
14       
15     // 设置单元格内容  
16     worksheet->write("A1", "Hello World");  
17       
18     // 保存文件  
19     xlsx.save("example.xlsx");  
20       
21     return a.exec();  
22 }
复制代码

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

QXlsx是开源第三方库

Github下载:https://github.com/dbzhang800/QtXlsxWriter

官方文档:http://qtxlsx.debao.me/

posted on   一杯清酒邀明月  阅读(1434)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 全程使用 AI 从 0 到 1 写了个小工具
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
历史上的今天:
2021-04-30 Qt QPushButton与QToolButton的区别
2021-04-30 Qt QSS美化 基础知识
2020-04-30 OpenCV 自动对比度和色阶增强
2020-04-30 OpenCV 保留对比度的去色算法
2020-04-30 OpenCV 图像对比度、亮度值调整
2020-04-30 OpenCV Vec3b类型的含义与使用
2020-04-30 OpenCV RGB直方图计算与绘制----calcHist()函数、normalize()函数
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示