当前位置:  软件>C/C++软件

文件压缩程序 gzip

    来源:    发布时间:2015-02-14

    本文导语:  gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序, 也经常用来表示gzip这种文件格式。软件的作者是Jean-loup Gailly和Mark Adler。 gzip的基础是DEFLATE,DEFLATE是LZ77与哈夫曼编码的一个组合体。DEFLATE最初是作为LZW以及其它受专...

gzip是GNU 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 1950、RFC 1951以及RFC 1952。


    
 
 

您可能感兴趣的文章:

  • 求助!如何在没有图形界面的LINUX下压缩文件夹,并将这个压缩文件在windows下解压?
  • zip在压缩文件的时候,可以把文件的权限也压缩进去吗?
  • 请教如何在Java中使用arj压缩的文件(压缩和解压缩)Linux下面
  • tar 压缩中文文件名的文件有问题,不能压缩,有什么其他方法吗?
  • .zip文件怎样在Unix下解压缩?.tar.tar文件怎样在Unix下解压缩
  • Linux下能压缩.zip 或 .rar 的压缩文件吗?
  • 请教有什么zip压缩库可以压缩文件夹?
  • 文件压缩/解压缩包 Commons Compress
  • 怎样解压缩.zip的压缩文件!!
  • 在linux上用tar压缩一个文件后到windows上解压缩出现乱码
  • 请问一个简单问题我有一个tar文件需要gunzip压缩,我用gzip -c 先压缩,然后再用gunzip -c可就是不行。请高人指教
  • 是不是所有的LINUX下的压缩文件都可以在WINDOWS下用WINZIP或WINRAR等解压缩啊
  • 求助关于zip命令,如何把文件压缩成指定大小的多个文件(Ubuntu7.04)
  • 如何将某几个文件打包成一个git的压缩包文件?
  • php在线压缩与解压缩SWF文件的代码(修正版)
  • 如何用compress把文件夹内的所有文件全部压缩
  • linux 文件压缩问题
  • linux 中,如何将压缩的文件复制到文件中??????
  • 关于linux文件压缩。。
  • linux压缩文件夹怎么过滤掉不需要的文件夹
  • http协议介绍,文件上传分析及程序举例
  • 请教高手一个简单问题:给定一个文件名,如何去查找该文件正在被几个程序使用,并怎么样才可以切断这个文件与正在打开该文件的程序之间的
  • Ubuntu程序开机自动启动设置(服务和自动运行配置文件)的几种方法
  • 在程序建立的文件夹里,程序自己无法创建文件?
  • Linux下c/c++开发之程序崩溃(Segment fault)时内核转储文件(core dump)生成设置方法
  • 我的程序是用c写的gtk+程序,有个函数的参数要传给它图片的文件名,但是图片和原程序不在同一目录下怎么办?怎么在程序里指定文件的路径
  • 求几个完整的Java程序,什么内容的程序都行,要包含工程文件和全部源文件,主要用于学习,发者就给分。
  • 用jbuilder开发的程序,其中用到了xylayout,将应用程序做成了jar文件,运行jar文件时,提示错误。请大家多帮忙
  • .so文件被程序加载后,不停止程序,可否更新.so文件?
  • 请问用JB7编译过的JAVA程序,哪一个文件是可执行程序啊?我怎么找不到啊?不是CLASS文件吧。双击他直接把JB7打开了。
  • linux 下的 .a 文件 .o 文件 是什么文件?各有什么作用? iis7站长之家
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ I/O 成员 eof():如果处于文件结尾处则返回true
  • Shell脚本如何递归现实一个文件夹中的文件(文件夹中含有文件夹)
  • WinDows8最新版文件夹加密
  • 求命令:什么命令可以把文件夹下所有的文件按修改时间先后排出来,包括子文件夹里的文件。
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • python异常信息堆栈输出到日志文件
  • 请问:proc中的头文件中能包含头文件吗?(感觉如果头文件中包含头文件的话,在链接时就会有错误啊)
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能
  • vi 中编辑两个文件,怎样从其中一个文件拷一段内容到另一个文件中。(同时打开两个文件)
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 怎么统计一个文件夹下有多少个文件(不包括文件夹)
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • linux 下的 .a 文件 .o 文件 是什么文件?各有什么作用?
  • MyEclipse如何查看和设置文件编码格式相关操作
  • 如何用socket一次传输多个文件,如何确定文件一个文件结束
  • 使用libpcap读取tcpdump抓取的文件并解析c代码实例
  • 如何删除某个目录下除了指定文件夹之外的所有文件和文件夹
  • 设置sharepoint 2010文档库中的 pdf文件在浏览器中访问的打开方式
  • solaris文件系统删除文件后文件夹大小不变


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3