当前位置: 首页 > news >正文

Qt Xlsx使用教程、Qt操作Excel、Qt生成Excel图表、跨平台不依赖Office 直接使用源码

1.Qt Xlsx库简介

官方文档:Qt Xlsx | QtXlsx 0.3 (debao.me)

下载地址:dbzhang800/QtXlsxWriter: .xlsx file reader and writer for Qt5 (github.com)

CSDN下载地址:QtXlsxWriter-master源码资源-CSDN文库

2.源码取出

3.目录结构

再根目录下创建一个 qtxlsx 文件夹 把src都解压进去

4.引入目录

.pro文件引入

# 使用qtxlsx源代码
include(qtxlsx/src/xlsx/qtxlsx.pri)

软件代码引入

//引入头文件
#include "xlsxdocument.h"

实例

自己弄的一个简单写入动作 需要的自改

void MainWindow::appendXlsxFile(const QString &firmwareVersion, const QString &imei, const QString &imsi, const QString &ID1, const QString &ID2, const QString &macAddress) {QString fileName = "自定义名称.xlsx";QXlsx::Document xlsx(fileName); // This will load the file if it exists or create a new oneif (!xlsx.sheetNames().isEmpty()) {// File exists, load the existing document} else {xlsx.addSheet("Device Info");QXlsx::Worksheet *sheet = xlsx.currentWorksheet();sheet->write(1, 1, "Firmware Version");sheet->write(1, 2, "IMEI");sheet->write(1, 3, "IMSI");sheet->write(1, 4, "ID1");sheet->write(1, 5, "ID2");sheet->write(1, 6, "MAC (Formatted)");sheet->write(1, 7, "MAC (Original)");sheet->write(1, 8, "Generation DateTime");}QXlsx::Worksheet *sheet = xlsx.currentWorksheet();int lastRow = sheet->dimension().lastRow() + 1;QString TmpstrMac = macAddress;TmpstrMac = TmpstrMac.remove(":");// 添加新行数据sheet->write(lastRow, 1, firmwareVersion);sheet->write(lastRow, 2, imei);sheet->write(lastRow, 3, imsi);sheet->write(lastRow, 4, ID1);sheet->write(lastRow, 5, ID2);sheet->write(lastRow, 6, TmpstrMac);sheet->write(lastRow, 7, macAddress);sheet->write(lastRow, 8, QDateTime::currentDateTime().toString(Qt::ISODate));if (xlsx.save()) {qDebug() << "XLSX file appended successfully.";} else {qDebug() << "Failed to save XLSX file.";}
}

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 优化业务流程的关键:深入探讨BPA流程设计
  • qt-11基本对话框(消息框)
  • 【图形验证和AI智能及CHATGPT对抗影响的是用户体验】
  • 【大模型系列篇】Transformers综述--邱锡鹏
  • react的setState中为什么不能用++?
  • pygame开发课程系列(4): 游戏元素
  • 怎么直接在PDF上修改内容?随心编辑PDF内容
  • 日拱一卒(4)——leetcode学习记录:路径总和
  • python爬虫爬取某图书网页实例
  • Nginx禁用IP和IP段
  • 二叉树的判断
  • 详解 Redis 队列 实现
  • druid+logback打印sql执行日志
  • ubuntu 20 安装mysql workbench 过程
  • 图像--数据增强
  • chrome扩展demo1-小时钟
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 前嗅ForeSpider中数据浏览界面介绍
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • # Java NIO(一)FileChannel
  • # Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型
  • $.ajax中的eval及dataType
  • ${factoryList }后面有空格不影响
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (Oracle)SQL优化技巧(一):分页查询
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (pojstep1.3.1)1017(构造法模拟)
  • (PyTorch)TCN和RNN/LSTM/GRU结合实现时间序列预测
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • (强烈推荐)移动端音视频从零到上手(上)
  • (三)终结任务
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (四)鸿鹄云架构一服务注册中心
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (源码分析)springsecurity认证授权
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)创业家杂志:UCWEB天使第一步
  • (轉貼) 寄發紅帖基本原則(教育部禮儀司頒布) (雜項)
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • ***通过什么方式***网吧
  • .ai域名是什么后缀?
  • .bat批处理(三):变量声明、设置、拼接、截取
  • .dat文件写入byte类型数组_用Python从Abaqus导出txt、dat数据
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NetCore+vue3上传图片 Multipart body length limit 16384 exceeded.
  • .net图片验证码生成、点击刷新及验证输入是否正确
  • .NET中GET与SET的用法
  • .Net中的设计模式——Factory Method模式
  • @Autowired注解的实现原理
  • @Builder用法
  • @DependsOn:解析 Spring 中的依赖关系之艺术
  • @Transactional 参数详解