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

QtXlsx库编译使用

文章目录

  • 一、前言
  • 二、Windows编译使用
    • 2.1 用法①:QtXlsx作为Qt的附加模块
      • 2.1.1 检验是否安装Perl
      • 2.1.2 下载并解压QtXlsx源码
      • 2.1.3 MinGW 64-bit安装模块
      • 2.1.4 测试
    • 2.2 用法②:直接使用源码
  • 三、Linus编译使用
    • 3.1、安装Qt5开发软件包:qtbase5-private-dev
    • 3.2 编译安装[同Windows操作]
    • 3.3 测试

一、前言

之前在Windows上进行Qt开发,需要编辑excel文件时,使用axcontainer模块即可。

但是axcontainer模块是Qt用来调用com组件的容器,而com的概念只在Windows中才有,因此在Linux无法使用。

所以使用axcontainer模块会让程序失去跨平台性,我们可以使用第三方库QtXlsx:QtXlsx源码下载

QtXlsx是可以读取和写入Excel文件的库。 它不需要Microsoft Excel,并且可以在Qt5支持的任何平台中使用。 该库可用于:

  • 从头开始生成新的.xlsx文件
  • 从现有的.xlsx文件提取数据
  • 编辑现有的.xlsx文件

注意:对于Linux用户,如果Qt是通过“ apt-get”之类的软件包管理器工具安装的,请确保已安装Qt5开发软件包qtbase5-private-dev


二、Windows编译使用

2.1 用法①:QtXlsx作为Qt的附加模块

2.1.1 检验是否安装Perl

如果已经安装则可进行下一步骤,否则请先安装perl

在这里插入图片描述


2.1.2 下载并解压QtXlsx源码

在这里插入图片描述


2.1.3 MinGW 64-bit安装模块

打开MinGW 64-bit编译器:

在这里插入图片描述
切换到QtXlsx源码路径:

在这里插入图片描述
进行如下操作:

#步骤1
qmake src.pro#步骤2
make#步骤3
make install

在这里插入图片描述

安装完成:

在这里插入图片描述


2.1.4 测试

新建Qt工程:XLSX_Test

在这里插入图片描述
打开QtXlsx源码中的examples中的Hello/main.cpp,将代码负责过来:

在这里插入图片描述
打开SLSX_Test.pro添加模块:

在这里插入图片描述

运行结果:

在这里插入图片描述
在这里插入图片描述


2.2 用法②:直接使用源码

源码中包含一个qtxlsx.pri文件,许您将组件集成到使用 qmake 进行生成步骤的应用程序中:

在这里插入图片描述
新建Qt工程:XLSX_Test

在这里插入图片描述
工程目录新建文件夹qtxlsx:

在这里插入图片描述
在这里插入图片描述
复制QtXlsx源码下的src文件夹到刚刚创建的文件夹qtxlsx中:

在这里插入图片描述
在工程中引入xlsx源代码:

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

在这里插入图片描述
打开QtXlsx源码中的examples中的Hello/main.cpp,将代码负责过来:

在这里插入图片描述
运行结果:

在这里插入图片描述
在这里插入图片描述


三、Linus编译使用

3.1、安装Qt5开发软件包:qtbase5-private-dev

sudo apt-get install qtbase5-private-dev

在这里插入图片描述


3.2 编译安装[同Windows操作]

切换到源码/src路径下,依次执行如下指令:

#步骤1
qmake src.pro#步骤2
make#步骤3
make install

在这里插入图片描述
在这里插入图片描述
编译安装完成:

在这里插入图片描述


3.3 测试

新建Qt工程:QtXlsx_Test

在这里插入图片描述


建议直接使用源码,操作同Windows内操作,这样可以不依赖Linux环境,可移植性更强!!!

相关文章:

QtXlsx库编译使用

文章目录 一、前言二、Windows编译使用2.1 用法①:QtXlsx作为Qt的附加模块2.1.1 检验是否安装Perl2.1.2 下载并解压QtXlsx源码2.1.3 MinGW 64-bit安装模块2.1.4 测试 2.2 用法②:直接使用源码 三、Linus编译使用3.1、安装Qt5开发软件包:qtbas…...

LeetCode题练习与总结:二叉树的层序遍历Ⅱ--107

一、题目描述 给你二叉树的根节点 root ,返回其节点值 自底向上的层序遍历 。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:[…...

WIFI国家码设置的影响

记录下工作中关于国家码设置对WIFI的影响,以SKYLAB的SKW99和SDZ202模组为例进行说明。对应到日常,就是我们经常提及手机是“美版”“港版”等,它们的wifi国家码是不同的,各版本在wifi使用中遇到的各种情况与下面所述是吻合的。 现…...

2024年软考高项-信息系统管理师介绍-备考-考试内容-通过攻略

介绍 以下是计算机软件考试的资格设置,本文说的是高级资格中的信息系统项目管理师(简称"高项"),是比较热门和好考的选择,与中级的"系统集成项目管理工程师"有大部分的知识重叠交叉,中级考了"系统集成项…...

Python知识点复习

文章目录 Input & OutputVariables & Data typesPython字符串重复(字符串乘法)字符串和数字连接在一起print时,要强制类型转换int为str用input()得到的用户输入,是str类型,如果要以int形式计算的话&#xff0c…...

GeoScene产品学习视频收集

1、易智瑞运营的极思课堂https://www.geosceneonline.cn/learn/library 2、历年易智瑞技术公开课视频资料 链接:技术公开课-易智瑞信息技术有限公司,GIS/地理信息系统,空间分析-制图-位置智能-地图 3、一些关于GeoScene系列产品和技术操作的视…...

51单片机的最小系统详解

51单片机的最小系统详解 1. 引言 在嵌入式系统中,51单片机被广泛应用于各种小型控制器和嵌入式开发板中。相信很多人都接触过51单片机,但是对于51单片机的最小系统却了解得不够深入。本文将从振荡电路、电源模块、复位电路、LED指示灯和调试接口五个方面详细介绍51单片机的…...

路径规划搜路算法有哪些?

路径规划搜索算法是帮助移动机器人或自动化系统在环境中从起点导航至终点的计算方法。以下是一些常见的路径规划搜索算法: Dijkstra算法:一种经典的最短路径搜索算法,适用于没有负权边的图。 A*算法:一种启发式搜索算法&#xff…...

Hadoop学习之hdfs的操作

Hadoop学习之hdfs的操作 1.将HDFS中的文件复制到本地 package com.shujia.hdfs;import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.junit.After; import org.junit.Before; import org.j…...

DBAPI怎么进行数据格式转换

DBAPI如何进行数据格式的转换 假设现在有个API,根据学生id查询学生信息,访问API查看数据格式如下 {"data":[{"name":"Michale","phone_number":null,"id":77,"age":55}],"msg"…...

Oracle JSON 函数详解与实战

Oracle 数据库提供了丰富的 JSON 函数集,使得开发者可以高效地处理 JSON 数据。本文将详细介绍这些函数,包括它们的语法、使用场景、具体示例,以及在实际项目中的应用。 文章目录 JSON_VALUE语法参数说明示例 JSON_QUERY语法示例 JSON_TABLE语…...

C#面:请解释转发与跳转的区别

在C#中,转发(forwarding)和跳转(jumping)是两种不同的控制流程操作。 转发 是指将控制权从一个方法或函数转移到另一个方法或函数。在转发中,程序会将当前的执行状态传递给另一个方法,并在该方…...

Java+IDEA+SpringBoot药物不良反应ADR智能监测系统源码 ADR智能化监测系统源码

JavaIDEASpringBoot药物不良反应ADR智能监测系统源码 ADR智能化监测系统源码 药物不良反应(Adverse Drug Reaction,ADR)是指在使用合格药品时,在正常的用法和用量下出现的与用药目的无关的有害反应。这些反应往往因药物种类、使用…...

linux系统模拟资源消耗的简单手段

当我们在做系统性能,稳定性,高可用等特殊场景的测试时,往往要对计算机的硬件资源做出比较苛刻的限制,因此需要最简便的办法增加CPU,内存,磁盘,网络等硬件环境的资源压力。下面介绍实现这些操作的…...

吉林大学软件工程简答题整理

1.6种软件过程模型列举,及优缺点(每个都从时间、质量、过程、本身特点去考虑) 瀑布模型 优点缺点V模型 优点:缺点: 原型模型 优点:演化模型 建增模型 优点缺点螺旋模型 优点缺点喷泉模型 RUP、敏捷工程、…...

爬山算法介绍

目录 1.概述 2.产生 3.定义 4.优缺点 5.应用示例 6.未来展望 7.示例代码 1.概述 爬山算法是一种简单的启发式搜索算法,从起始点开始,每次选择当前位置邻域内的最优解作为下一个位置,直到达到目标点或无法继续前进。爬山算法的基本思想…...

在linux中配置关于GFS创建各种卷以及卷组--配置实验

服务器的相关信息 服务器的相关信息 卷名称 卷类型 空间大小 Brick dis-volume 分布式卷 12 Node1(/e6)、node2(/e6) Stripe-volume 条带卷 10 Node1(/d5)、node2(/d5) Rep-volume 复制卷 5 Node3(/d5)、node4(/d5) Dis-stripe 分布式条带卷 12 Node1(/b3)、node2(/b3)、node(…...

安泰电子:使用高压放大器时有哪些需要注意的呢

随着科技的不断进步,高压放大器在各种科学实验、工程应用和产业生产中扮演着重要的角色。然而,由于高压放大器的特殊性,使用时需要特别小心和谨慎。下面将详细介绍使用高压放大器时需要注意的事项,以确保安全、稳定地进行实验和应…...

为什么大部分新手做抖音小店赚不到钱?

大家好,我是喷火龙。 今天来给大家聊聊,为什么大部分新手做抖店赚不到钱? 不知道大家想过这个问题没有,可能有些人把赚不到钱的原因归结于市场、或者平台、又或者运营技术以及做店经验。 但我觉得这些都不是重点,重…...

跳跃游戏(2)

问题描述 给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。 输入&#xff1…...

Veo整合失败的3大致命误区,第2个90%团队仍在踩——附Google Cloud Vertex AI+Veo私有化部署Checklist(含GPU显存优化参数)

更多请点击: https://intelliparadigm.com 第一章:Veo与其他AI视频工具整合 Veo 作为 Google 推出的高保真长时长视频生成模型,其核心价值不仅体现在独立生成能力上,更在于与现有 AI 视频工作流的深度协同。通过标准化 API 接口与…...

ChatGPT企业版安全合规全解析:如何在72小时内完成GDPR/等保2.0双认证接入?

更多请点击: https://intelliparadigm.com 第一章:ChatGPT企业版核心架构与合规定位 ChatGPT企业版并非简单叠加访问权限的SaaS服务,而是基于隔离部署、数据主权保障与策略可编程性构建的合规优先架构。其底层采用多租户物理隔离的专用基础设…...

Rusted PackFile Manager:终极免费工具助你轻松制作全面战争模组

Rusted PackFile Manager:终极免费工具助你轻松制作全面战争模组 【免费下载链接】rpfm Rusted PackFile Manager (RPFM) is a... reimplementation in Rust and Qt6 of PackFile Manager (PFM), one of the best modding tools for Total War Games. 项目地址: h…...

Thorium浏览器深度解析:如何通过编译优化实现300%性能提升的技术革命

Thorium浏览器深度解析:如何通过编译优化实现300%性能提升的技术革命 【免费下载链接】thorium Chromium fork named after radioactive element No. 90. Source code and Linux releases. Windows/MacOS/ARM builds served in different repos, links are towards …...

卡方检验筛选高质量样本,提升小样本学习在机器文本检测中的性能

1. 项目概述与核心价值在自然语言处理的实际工作中,我们常常会遇到一个令人头疼的困境:手头的数据标注成本高昂,或者特定领域的样本本身就极其稀缺。这时候,小样本学习(Few-Shot Learning)就成了我们的“救…...

终极指南:3分钟学会PubMed文献批量下载,科研效率提升97%

终极指南:3分钟学会PubMed文献批量下载,科研效率提升97% 【免费下载链接】Pubmed-Batch-Download Batch download articles based on PMID (Pubmed ID) 项目地址: https://gitcode.com/gh_mirrors/pu/Pubmed-Batch-Download 还在为手动下载PubMed…...

思源宋体CN:7种字重完整字体库,打造专业级中文排版体验

思源宋体CN:7种字重完整字体库,打造专业级中文排版体验 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 还在为中文排版不够优雅而烦恼吗?Source Han…...

如何高效使用NHSE:动物森友会存档编辑器的完整专业指南

如何高效使用NHSE:动物森友会存档编辑器的完整专业指南 【免费下载链接】NHSE Animal Crossing: New Horizons save editor 项目地址: https://gitcode.com/gh_mirrors/nh/NHSE 你是否厌倦了在《集合啦!动物森友会》中花费数百小时收集稀有物品&a…...

CSS Flexbox高级技巧:构建灵活的响应式布局

CSS Flexbox高级技巧:构建灵活的响应式布局 引言 Flexbox是CSS3引入的一维布局模型,它提供了强大的灵活布局能力。本文将深入探讨Flexbox的高级技巧和最佳实践,帮助你构建更优雅的响应式布局。 一、Flexbox核心概念回顾 .container {display:…...

避开这些坑,你的孟德尔随机化分析结果才可靠:以口腔癌研究为例的实操避雷指南

孟德尔随机化分析实战避坑指南:从数据陷阱到稳健结论当你在深夜盯着屏幕上那个意义不明的0.6940093乘数,或是当MR-PRESSO分析结果始终无法收敛时,是否怀疑过自己的分析流程存在致命缺陷?孟德尔随机化(MR)作…...