Qt扩展-QXlsx读写Excel配置使用

QXlsx读写Excel配置使用

  • 一、概述
    • [1. 功能概述](#1. 功能概述)
    • [2. 其他维护](#2. 其他维护)
  • 二、安装
    • [1. 下载源码](#1. 下载源码)
    • [2. 配置项目](#2. 配置项目)
    • [3. 测试代码](#3. 测试代码)
    • [4. 运行结果](#4. 运行结果)

一、概述

项目介绍:https://qtexcel.github.io/QXlsx/Example.html

GitHub:https://github.com/QtExcel/QXlsx/tree/master

QXlsx 是一个读写excel表格的库,可以在Qt5、Qt6上使用。也是我觉得很方便的一个库,我们可以用这个库去生成简单的报表文件。这个库支持qmake和cmake的方式引入,配置也非常简单,也是跨平台的一个库。

1. 功能概述

这个库提供了像日历、图表、公式、图片、格式化、表格操作等功能。官方给的例程也非常多。

  • calendar
  • chart
  • chart sheet
  • data validation
  • demo
  • document property
  • extract data
  • formula
  • hyperlink
  • image
  • merge cells
  • number format
  • page margins
  • read style
  • richtext
  • row column
  • style
  • worksheet operations

2. 其他维护

同时这个项目下同时有对于标准C++、C语言的库的支持

Qxlnt(支持使用C++ 标准库的方式读写excel文件):https://github.com/QtExcel/Qxlnt

Qlibxlsxwriter (支持标准C语言读写excel文件):https://github.com/QtExcel/Qlibxlsxwriter

二、安装

下面简单介绍一下使用 qmake的方式引入,在作者提供的方式中,作者推荐我们使用 pri 方式引入。下面就以 pri 源码引入介绍。我们也可以将这个编译成库引入也可以。

1. 下载源码

将QXlsx下的 下面所选的文件拷贝到需要的项目目录下

拷贝过去后

2. 配置项目

在需要的Pro文件下添加如下的配置

bash 复制代码
# QXlsx code for Application Qt project
QXLSX_PARENTPATH=./         # current QXlsx path is . (. means curret directory)
QXLSX_HEADERPATH=./header/  # current QXlsx header path is ./header/
QXLSX_SOURCEPATH=./source/  # current QXlsx source path is ./source/
include(QXlsx.pri)

3. 测试代码

cpp 复制代码
// main.cpp

#include <QCoreApplication>

#include "xlsxdocument.h"
#include "xlsxchartsheet.h"
#include "xlsxcellrange.h"
#include "xlsxchart.h"
#include "xlsxrichstring.h"
#include "xlsxworkbook.h"
using namespace QXlsx;

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QXlsx::Document xlsx;
    xlsx.write("A1", "Hello Qt!"); // write "Hello Qt!" to cell(A,1). it's shared string.
    xlsx.saveAs("Test.xlsx"); // save the document as 'Test.xlsx'

    return 0;
    // return a.exec();
}

4. 运行结果


相关推荐
疋瓞1 天前
python和C++对比(1)_数据类型和数据结构
数据结构·c++·python
C语言小火车1 天前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
ALex_zry1 天前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
小短腿的代码世界1 天前
Qt Bluetooth源码深度解析:从HCI协议到跨平台API的完整架构
开发语言·qt·架构
_olone1 天前
Luogu P2704 [NOI2001] 炮兵阵地
c++·算法·状压dp
c238561 天前
互斥锁高频面试题全解:从基础概念到底层实现,一文通关
java·c++·面试·职场和发展
nianniannnn1 天前
c++复习自存--继承
开发语言·c++
小短腿的代码世界1 天前
Qt WebEngine多进程架构与IPC通信:从Chromium多进程到Qt信号槽融合
qt·架构·系统架构
旖-旎1 天前
《LeetCode 746 使用最小花费爬楼梯 || LeetCode 91 解码方法》
c++·算法·leetcode·动态规划
王老师青少年编程1 天前
2026年6月GESP真题及题解(C++二级):完全平方数计数
c++·题解·真题·gesp·二级·2026年6月·完全平方数计数