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. 运行结果


相关推荐
wunaiqiezixin7 小时前
如何在C++中创建和管理线程
c++
雪度娃娃8 小时前
转向现代C++——在意为改写的函数添加 override
开发语言·c++
王老师青少年编程8 小时前
csp信奥赛C++高频考点专项训练之前缀和&差分 --【一维差分】:[NOIP 2018 提高组] 铺设道路
c++·前缀和·差分·csp·高频考点·信奥赛·铺设道路
星马梦缘8 小时前
aaaaa
数据结构·c++·算法
喵星人工作室9 小时前
C++火影忍者1.1.2
开发语言·c++
basketball6169 小时前
C++ 中的 ptrdiff_t 详解
开发语言·c++
wunaiqiezixin10 小时前
互斥锁与自旋锁的区别
c++
代码中介商10 小时前
深入解析STL中的stack、queue与priority_queue
开发语言·c++
磊 子11 小时前
STL无序关联容器—unorded_set+unorded_map
开发语言·c++
初夏睡觉11 小时前
数据结构学习之~二叉堆 (P3378 【模版】堆)
数据结构·c++·学习