如何在Qt中使用zlib

前言

环境:qt5.9.9 、 zlib1.2.1、 windows10、QtCreator4.11.0
本文介绍了在Qt中使用zlib的方式。使用的场景是在上位机软件中使用解压缩功能。
点击此处下载本文完整的示例代码。


问题

比较麻烦的事情在于,截至目前最新的zlib支持到使用vs2015进行编译,而已有的上位机软件是使用minGW编译的,使用vs编译的dll库没办法在minGW中使用。现在摆在面前有两条路,一种是把上位机软件使用msvc重新编译,然后再使用vs2015编译的zlib库。另一种使用minGW编译zlib,然后再供上位机软件调用。两种方式理论上行得通,但是实践起来可能会出现各种问题,甚至行不通。
这时候通过看博客发现qt中居然自带了zlib库,于是我搜索了一下,发现在minGW下确实有zlib的头文件,在qt帮助文档中也发现了关于zlib的描述。在这里插入图片描述
在这里插入图片描述
于是我新建了一个工程将在pro文件中增加LIBS+=lz,然后包含zlib.h,居然真的好用。需要注意的是我的zlib是在minGW下的,使用msvc构建是不行的。同时还必须包含qt的core模块。不过打开了zlib.h文件我才发现这里边都是些最基础的操作接口,看的一脸懵,根本不知道从何下手。这时候我突然想到了zlib源代码下的例程。

解决问题

我需要用到的是解压缩的操作,于是在源代码中找到了解压缩的高级点的API接口以及例程,把其源文件加到我新建的项目中,然后编译,结果成功了。
在这里插入图片描述

运行结果

使用了一个名为“modbus配置说明.zip”的压缩文件进行测试,输出其内部的所有文件信息。
在这里插入图片描述
至此可以在qt中使用zlib库了。


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值