简单介绍VC++6.0下如何使用压缩库ZLIB

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

1. 如何获得zlib

zlib的主页是:http://www.zlib.net/

2. 用VC++6.0打开

把下载的源代码解压打开,VC6.0的工程已经建好了,在/projects/visualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程example 是如何使用 zlib.lib 的示例, 工程minigzip 是如何用 zlib 提供的函数读写.gz文件的示例(*.gz的文件一般Linux下比较常用).

3. 如何加入到我的工程

编译好 zlib.lib 后, 你就得到了调用一个静态库所需要的所有文件了(zlib.lib, zlib.h, zconf.h). 如何调用静态库不用我说了吧.

4. 用zlib能干什么

先来看看 zlib 都提供了那些函数, 都在zlib.h中,看到一堆宏不要晕,其实都是为了兼容各种编译器和一些类型定义.死死抓住那些主要的函数的原型声明就不会受到这些东西的影响了.

关键的函数有那么几个:

(1)int compress (Bytef *dest,   uLongf *destLen, const Bytef *source, uLong sourceLen);

把源缓冲压缩成目的缓冲, 就那么简单, 一个函数搞定

(2) int compress2 (Bytef *dest,   uLongf *destLen,const Bytef *source, uLong sourceLen,int level);

功能和上一个函数一样,都一个参数可以指定压缩质量和压缩数度之间的关系(0-9)不敢肯定这个参数的话不用太在意它,明白一个道理就好了: 要想得到高的压缩比就要多花时间

(3) uLong compressBound (uLong sourceLen);

计算需要的缓冲区长度. 假设你在压缩之前就想知道你的产度为 sourcelen 的数据压缩后有多大, 可调用这个函数计算一下,这个函数并不能得到精确的结果,但是它可以保证实际输出长度肯定小于它计算出来的长度

(4) int uncompress (Bytef *dest,   uLongf *destLen,const Bytef *source, uLong sourceLen);

解压缩(看名字就知道了:)

(5) deflateInit() + deflate() + deflateEnd()

3个函数结合使用完成压缩功能,具体用法看 example.c 的 test_deflate()函数. 其实 compress() 函数内部就是用这3个函数实现的(工程 zlib 的 compress.c 文件)

(6) inflateInit() + inflate() + inflateEnd()

和(5)类似,完成解压缩功能.

(7) gz开头的函数. 用来操作*.gz的文件,和文件stdio调用方式类似. 想知道怎么用的话看example.c 的 test_gzio() 函数,很easy.

(8) 其他诸如获得版本等函数就不说了.

总结: 其实只要有了compress() 和uncompress() 两个函数,在大多数应用中就足够了.

C++ 使用ZLIB库实现目录压缩与解压 阅读详情

相关推荐

z-libirary登录入口_z-libirary在线检测可用检测

z-libirary在线检测很容易就能获取到最新的地址zlibrary官网是一个图书类的网站,Z-Library(缩写为z-lib,以前称为BookFinder)是Library Genesis的镜像,一个影子图书馆项目,用于对学术期刊文章、学术文本和大众感兴趣的书籍(其中一些是盗版的)进行文件共享访问)。它的大部分书籍来自Library Genesis,而其中一些则由个人直接上传到其网站。个人还可以为网

计算机毕业论文源码,学生个人网页制作html源码。贴近用户做网络推广和互联网优化。 16万+

当我以为z-library已死的时候 它居然又活了?!!

What Happened To Z-lib? zlib的复活只是暂时的。deepweb会让zlib得到永生!

Genevieve_xiao的博客 3万+

MFC Zlib 解压和压缩简单文件夹 亲测可用 简单

MFC Zlib 解压和压缩简单文件夹和文件 亲测可用 简单类封装类!

第三方库介绍——zlib

第三方库介绍——zlib

NRWHF的博客 3万+

简单介绍VC++6.0下如何使用压缩库ZLIB(转)

来源:http://www.diybl.com/course/7_databases/database_other/2008629/129160.html 1. 如何获得zlibzlib的主页是:http://www.zlib.net/2.VC++6.0打开把下载的源代码解压打开,VC6.0的工程已经建好了,在/projects/visualc6. 双击zlib.dsw,

xiunai78的专栏 1066

简单介绍VC++6.0下如何使用压缩库ZLIB(转)

1. 如何获得zlib zlib的主页是:http://www.zlib.net/ 2.VC++6.0打开 把下载的源代码解压打开,VC6.0的工程已经建好了,在\projects\visualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程example ...

antipu9657的博客 214

简单介绍VC++6.0下如何使用压缩库ZLIB

1. 如何获得zlib zlib的主页是:http://www.zlib.net/ 2.VC++6.0打开 把下载的源代码解压打开,VC6.0的工程已经建好了,在\projects\visualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程example 是如何使用...

weixin_30672295的博客 209

Zlib介绍

1. 如何获得zlib   zlib的主页是:http://www.zlib.net/   2.VC++6.0打开   把下载的源代码解压打开,VC6.0的工程已经建好了,在projectsvisualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程example 是...

weixin_34279061的博客 8167

Linux/Windows下Zlib的安装与使用

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34050519的博客 2146

zlib压缩解压缩文件

1. 如何获得zlib zlib的主页是:http://www.zlib.net/ 偶是从www.xunlei.com搜到的。 2.VC++6.0打开 把 下载的源代码解压打开,VC6.0的工程已经建好了,在\projects\visualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / r

踏雪无痕 3497

zlib使用介绍

1. 如何获得zlib   zlib的主页是:http://www.zlib.net/   2.VC++6.0打开   把下载的源代码解压打开,VC6.0的工程已经建好了,在projectsvisualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程e

wangluozhangleilei的专栏 1799

c语言ml不是内部或外部命令,Linux/Windows下Zlib的安装与使用

zlib是一个很好的压缩解压缩库,今天我们分别介绍如何在Linux与Windows上安装与使用:一:Linux平台首先看看自己的机器上是不是已经安装好zlib了:whereis zlib如果安装好了,会输出zlib的路径,这样直接跳过前2步。1.在http://www.zlib.net/下载zlib的最新版,我的是1.2.3(官网貌似上不去,可以找别的地方下载)2.解压,编译:./configur...

weixin_39630855的博客 846

zlib用法简单说明

zlib用法简单说明 收藏 本文的目的是: 简单说明如何把zlib加入到MFC程序中,提供内存压缩功能.1. 如何获得zlibzlib的主页是:http://www.zlib.net/2.VC++6.0打开把下载的源代码解压打开,VC6.0的工程已经建好了,在/projects/visualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib

587

VC++集成ZLIB压缩库实战:从编译配置到调试排错完整指南

数据压缩是计算机科学中优化存储与传输效率的基础技术,其核心原理是通过算法消除数据冗余。在工程实践中,ZLIB作为广泛使用的开源压缩库,提供了稳定高效的DEFLATE算法实现。对于Windows平台的C++开发者而言,在Visual Studio环境中集成第三方库常面临编译配置、依赖管理等挑战。本文聚焦VC++项目集成ZLIB库的完整流程,涵盖从源码编译、运行时库配置到调试符号生成等关键环节。针对开发中常见的“NOTFOUND”链接错误和“VC++崩溃”问题,提供了具体的解决方案和排查路径。通过一个可运行的示

weixin_33711647的博客 415
上一篇: SQL语言基本语句介绍
下一篇: 战斗机排行榜
nanoo
博客等级 码龄22年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值