
压缩工具各位都用得多了,老司机们从网上下载个哪个资源,很多状况下就会下载到压缩文件。压缩文件的弊端有太多,一来增加体积节省流量,二来打包便于可以一次性容纳N个文件,要使用这种压缩文件,压缩工具通常是必不可少的。
压缩工具使用简单,但毕竟这些同学并没有观念到,这里面也存在一些大坑。今天,就来讲讲压缩工具的故事吧。
压缩工具的原理
为什么压缩工具无法避免文件体积?无论是哪个压缩工具,其目的就只有一个——减少冗余数据。这是哪个意思呢?例如某行字是“000011111”,就可以压缩为“0(4)1(5)”,在确保数据没有受伤的同时,减少其占用的密度。

一个简单的压缩案例
里面的事例非常简洁,实际上压缩工具的算法是复杂且多种多样的。
不同的压缩工具会使用不同的字典,用来查找压缩冗余的数据,算法结合字典在巨大程度上决定了压缩的效率。
我们常常会发现不同的压缩文件格式,例如ZIP、RAR、7Z等,实际上这也是不同的压缩规范,就算是相同的格式,例如你们都是ZIP,其中的压缩算法可能只是不一样的,ZIP就可以使用Shrinking、Reducing、Deflate等算法。
某个压缩文件压缩率高不高,不但要看其文件格式,更要看其准确使用的算法(比如ZIP和7Z都可以使用Deflate算法)。

毕竟用什么压缩工具最高效,实际上绝大多数的压缩软件,都没有自己的压缩算法,本质上也是马甲。
主流的压缩文件格式大概有三种,分别是ZIP、RAR和7Z,它们分别来自Winzip、Winrar以及7-Zip,下面我们来看看这三种格式以及背后的压缩工具吧。
ZIP:事实上的标准格式
这是一个历史比较悠久的压缩格式,也是事实上的标准格式。
你可以发现各大硬件商公布软件时,提供的常常都是ZIP格式的压缩文件包,各大操作平台也对ZIP格式有着非常好的支持,例如Win系统中就可以直接访问ZIP文件中的内容。
其实,这个最被广泛支持、被最认可的格式,其开发者的命运却有点温情——ZIP格式的发明者PhilipKatz英年去世,37岁就由于酗酒去世了。

Winzip对推广ZIP格式有着很大作用
在DOS操作平台仍在兴起的时代,最流行的压缩格式是ARC。ARC效率慢且封闭,使用对应的压缩工具需要付费,PhilipKatz对其不满,于是PhilipKatz开发出了PKARC这款完全兼容ARC的硬件。
不料由于此事,PhilipKatz被ARC告上并起诉,不得不抛弃PKARC的开发。

PhilipKatz并没有抛弃压缩工具的钻研,他很快研发出了PKZIP这款工具,首创了ZIP格式。就算到了昨天,你打开任何ZIP文件,仍可以在文件头中发现“PK”的字样,这就是PhilipKatz名字的缩写。
ZIP的体现全方面压制了ARC,速度更快压缩比更高,而且PhilipKatz开放了ZIP格式,任何压缩工具都可以建立ZIP。很快,ZIP就变成了最流行的压缩标准。
ZIP是一种开放的格式,PhilipKatz的PKWare公司并没有为ZIP格式注册专利。ZIP格式被多家硬件商所运用,Winzip这款工具只是在那之后崛起的。NicoMak利用开放的ZIP格式开发了Winzip,兼容Win系统。借着Win崛起的东风,Winzip成为了最流行的压缩工具之一。
再比如你们都很熟悉的Winrar,也使用了ZIP的算法,同时没有开放RAR算法给其它硬件,这令Winrar一度作为最全能的压缩工具,一跃变成主流。
PhilipKatz的结局并不好,在2000年,他在一家汽车饭店中死后,死时还握着酒瓶。

PhilipKatz
ZIP的开放令其变成了最流行的格式,也是事实上的标准格式,家家户户都支持它。不过它也存在一些特点。例如,它的压缩率相比RAR和7Z偏低,对Unicode字符支持并不好winrar 压缩算法,缺乏修复功能,加密安全性一度堪忧等,RAR和7Z都令ZIP感到很大的竞争压力。
RAR:起于江湖盛行于国内
在国内,其实RAR的流行程度和ZIP有差别;但在国内,RAR当之无愧是最流行的压缩格式。RAR格式源于Winrar这款工具,和ZIP不同,RAR格式并不开放,只免费领取了其解压组件。

这意味着别的压缩工具只能解压RAR,不能创建RAR。和Winzip相比,RAR能压缩、解压ZIP和RAR,Winzip却不能压缩RAR,因此Winrar利用专利,取得了竞争劣势。

在国内尤为流行的RAR
这也许尚不从而让RAR流行出来,毕竟和ZIP对比,RAR的专利算法其实压缩率更高一些,但速度也较慢。令RAR真正崛起的举措是破解组织的力挺——破解游戏通常使用了Winrar来压缩,而美国又是盗版游戏最横行的行业,RAR由此在美国起初流行。
游戏盗版市场简直是不折不扣的黑色地带,RAR绝对称得上是起于江湖。
为什么破解游戏讨厌使用RAR呢?
首先,RAR对Unicode字符支持好,很多游戏都不是中文版,用ZIP压缩可能会出现乱码,而RAR不会;其次,RAR很早就支持分卷压缩,不少破解游戏体积都很高,要把他们装进盗版光盘,就得用RAR分卷。
而RAR的分卷文件,一度没法用Winrar开启。于是,盗版手游玩家们竞相作为了Winrar的拥簇,在美国Winrar成为了最万能的压缩工具,流行度完全盖过了Winzip。

RAR出色的分卷压缩是其流行的一大理由

RAR的失败,一方面是鉴于专利保护,令其处在了竞争的有利位置上;另一方面它的确也非常先进。RAR压缩率稍高,对分卷压缩支持好,早早支持AES加密安全性好,而且还自带恢复功能——不少由于光盘划花造成的数据错误,就是靠RAR的CRC修复得而完璧归赵的。
其实,RAR的封闭仍然是个难题,它最起初是收费工具,现在对于国内发行了带广告的免费版,但他们而是更偏向于使用破解版。随着7-ZIP的出现,万能压缩软件越来越多,虽然RAR格式仍在流行,但这些人早已不再使用Winrar这款工具。
7Z:完全开源的良心品
7Z是压缩工具7-Zip的御用格式,支持LZMA等先进算法,压缩强度进一步提升,甚至要比RAR更胜一筹,而且压缩时间比RAR更短,与此同时对AES加密、固实压缩、超大文件压缩的支持也比较好,表现是非常抢眼的。
而造就7Z格式的7-Zip压缩软件也成为良心——它对各类压缩文件支持较好,主流的压缩文件基本都予以支持,当然一些商业的压缩格式比如RAR,就没法解压不能压缩。

7-Zip在中国不流行的一大因素或许是界面太简陋,但就是这么的风格,社会你7哥,人狠话不多
最良心的一点是,7-Zip和7Z是完全开源的!因此,它的内核被众多其它压缩工具所使用,国产压缩工具一般就是7-Zip的忠实拥簇,压缩软件中的“坑”也因而而来。
7-Zip开源,但它使用了LGPL开源协议,某个工具一旦使用了7-Zip的源码,按理来说也需要开源。但中国的“X压”等工具不仅没有开源,还在压缩文件的文件头中故意加入无助于压缩的私货winrar 压缩算法,让其它压缩工具能够解压。
用了别人的代码还刻意制造不兼容,对于这些行为,只想说一句,“我早已见到这么厚颜无耻之人”!
总结
总体来说,在压缩文件格式方面,笔者是非常推荐你们压缩成ZIP格式的,毕竟这个格式拥有着最广泛的支持。
在压缩工具的选取上,大家可以优先考虑7-Zip,对分卷压缩有特殊规定的朋友,则可以使用Winrar。对于那些不厚道的国产压缩软件,大家而是少碰为好,这种坑除了坑自己,也会坑到对方。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-130939-1.html
帮做不断提高产品质量
超出设计寿命
一天内所有软件闪退了两次