文件压缩程序 gzip

GPL
C/C++
跨平台
2010-01-23
红薯

gzipGNU zip的缩写,它是一个GNU自由软件的文件压缩程序, 也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。

gzip的基础是DEFLATE,DEFLATE是LZ77与哈夫曼编码的一个组合体。DEFLATE最初是作为LZW以及其它受专利保 护的数据压缩算法的 替代版本而设计的,当时那些专利限制了compress以及其它一些流行的归档工具的应用。

文件格式说明:

  • 10字节的头,包含幻数、版本号以及时间戳
  • 可选的扩展头,如原文件名
  • 文件体,包括DEFLATE压缩的数据
  • 8字节的尾注,包括CRC-32校验和以及未压缩的原始数据长度

尽管这种文件格式允许多个这样的数据拼接在一起,在解压时也把它们当作拼接在一起的数据,但是通常gzip仅仅用来压缩单个文件。多个文件的压缩归 档通常是首先将这些文件合并成一个tar文件,然后使用gzip进行压缩,最后生成的.tar.gz或 者.tgz文件,这就是所谓的“tar压缩包”或者“tarball”。

注意不要将gzipZIP压 缩格式混淆。ZIP也使用DEFLATE算法,而且可移植性更好,并且不需要一个外部的归档工具就可以包容多个文件。但是,由于ZIP对每个文件进行单独 压缩而没有利用文件间的冗余信息(固实压缩),所以ZIP的压缩率要稍逊于tar压缩包。

zlib是 DEFLATE算法的实现库,它的API同时支持 gzip文件格式以及一个简化的数据流格式。zlib数据流格式、DEFLATE以及gzip文件格式均已被标准化成了,分别是RFC 1950RFC 1951以及RFC 1952

加载中

评论(1)

changkong
changkong
最近在学习LZW算法对位图的压缩,自己的代码不是很好,现在来学习学习现有的实现方法,感谢开源精神,使我们站在巨人的肩膀上 gzip

gzip 1.6 发布,文件压缩工具

gzip 1.6 改进记录: 添加 "--keep" (-k) 参数用于不删除输入文件 修复了 pack 格式的解压问题 使用优化编译后的错误覆盖问题修复 zgrep 的处理多数字上下文参数的问题修复 zmore 行为更像 ...

2013/06/11 06:57

gzip 1.5 发布,文件压缩工具

gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序, 也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。 gzip的基础是DEFLATE,DEFLATE是LZ77与哈夫曼编码...

2012/06/19 21:20

gzip 1.4 发布

该版本有很多新的改动,最主要的是一个代码执行上可能存在的漏洞,漏洞编号:CVE-2010-0001;还有其他一些小bug的修正。 下载地址: http://www.gzip.org/#exe...

2010/01/23 10:45

没有更多内容

加载失败,请刷新页面

没有更多内容

6
回答
tomcat开启gzip,有的压缩,有的不压缩

tomcat开启了gzip后,有的css文件被压缩,有的css文件不压缩,js文件一个都没有被压缩, tomcat7以后JavaScript的类型是app...

2015/05/22 12:52
5
回答
osc是如何配置gzip压缩的?

看osc的jquery1.5.1 压缩到33.8K ,是如何做到的?为什么我tomcat开启了gzip压缩,文本有压缩,但jquery 不压缩呢?

2011/07/01 16:21
1
回答
GZIP压缩后使用JMeter测试结果反而更慢

如题,Web容器是JBoss,启用GZIP压缩后,用浏览器查看,确实响应时间有提升。 但是,使用JMeter测试,结果和启用压缩前相比,却变得更慢了。 J...

2016/01/08 10:30
2
回答
java GZIP压缩及解压缩

public static String compress(String str) throws IOException { if (str == nul...

2016/08/31 14:01
6
回答
关于网页GZip压缩,解压失败问题提示 "GZip 头中的幻数不正确"

这个问题纠结了我好久,不知道什么原因导致的,处理 Http 请求响应的 GZip 数据很正常,但是这种的就不行。上代码,大神帮小弟看看。 public p...

2016/08/09 09:09
8
回答
nginx gzip不生效
NestleCaau 的回答 2015/12/09 12:23
最佳答案
引用来自“木meng”的评论 是不是被浏览器骗了, 看访问日志好一点,用IE11,我也掉坑里了 这么久了,还有人回复我. 最后发现答案是被杀毒软件过滤了gzip!!!
3
回答
weblogic 部署服务,ehcache gzip不生效,单机内网生效,通过域名访问不生效(F5集群)

应用服务器使用weblogic,缓存使用ehcache,压缩使用ehcache的gzip,在开发机、测试机、生产机的单机内网访问,均正常,但通过F5进行集...

2014/11/06 22:11
2
回答
android GZIP unknown format

今天用到大数据量传输,要用到GZIP。 服务端封好了传过来,entity都能接收到。就是在new GZIPINPUTSTREAM的时候。 抛出unknow...

2014/03/13 19:31
2
回答
linux下各种格式的压缩包的压缩、解压方法

.tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!)...

2009/04/29 15:59
3
回答
关于URL传递进来的英文编码问题

今天遇到了个奇怪的问题 URL传进来了一个参数. 是用GZIP压缩过的明文是 H4sIAAAAAAAEAO29B2AcSZYlJi9tynt/SvVK1+...

2015/07/26 17:34

没有更多内容

加载失败,请刷新页面

Nginx开启和配置gzip

gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,可以极大的加速网站.有时压缩比率高到80%,近来测试了一下,最少都有40%以上,还是相当不错的。 gzip 决定是否开启gzip模块 example:...

2013/07/01 14:12
6.8K
1
Nginx Gzip 压缩配置

随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢? gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以...

2012/12/27 17:02
115
0
Nginx服务架构初探(三):nginx服务器的gzip压缩

四、服务器的gzip压缩 1.ngx_http_gzip_module模块处理的9个指令 在处理时实时压缩 1>gzip on|off 开启或关闭gzip功能 2>gzip_buffers number size 用于设置文件使用缓存空间大小 number为空...

06/20 15:30
24
0
nginx菜鸟教程七

nginx之gzip压缩

2014/11/30 21:57
219
1
Nginx配置gzip压缩的简单示例

本文介绍下,在nginx中配置gzip压缩的简单例子,一段核心的配置节代码,供大家参考。 在nginx中配置gzip压缩很简单,只需要几行代码即可。 使用 gzip 压缩可以降低网站带宽消耗,提升访问速度...

2013/09/04 20:18
133
0
Apache启用GZIP压缩网页传输方法

Apache启用GZIP压缩网页传输方法

2013/12/31 13:30
104
1
Nginx开启gzip

验证是否开启的网址:http://gzip.zzbaike.com/ gzip on; gzip_min_length 1000; gzip_buffers 4 8k; gzip_comp_level 6; #0-9 默认值为1,值越大压缩率越高,消耗的cpu资源越多,传输量减小...

2012/11/28 09:18
126
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部