电脑上的文件压缩包我们在平时都有使用过的一个东西,通过打包压缩,可以减少文件体积,对文件加密,绕过一些网络传输规则。我们虽然每天都在使用压缩文件,但是真正有了解的还是比较少,数据压缩的原理和压缩文件格式的区别,不同的压缩方式和效率区别还是比较大的,你选对了压缩方式了吗?
首先我们了解一下压缩的原理,压缩分为「有损压缩」和「无损压缩」。有损压缩就是直接对文件进行压缩,删除不重要的数据,一般用于音乐、视频、图像等媒体文件。有损压缩后不能还原,比如在微信上传图片未勾选“原图”时,就会被有损压缩。无损压缩,数据可以被完美还原。我们今天讨论的是无损压缩中的,压缩包形式。
简单来说所有文件都是由代码组成的,代码数量决定了文件体积,但是,文件体积与文件包含的有效信息量却并不对等。因为文件中的代码并不是最精简的状态,如果将这些代码精简,就能在文件内容不变的情况下缩小文件体积。所有压缩软件的工作原理都是这样,只是不同格式的算法不同。
就拿我们目前使用的最多的rar、ZIP和7z压缩格式来给大家讲解:
一、ZIP格式:ZIP的前身是名为ARC的商业压缩软件,1985年一家名为SEA(System Enhancement Associates,系统增强伙伴)的小公司开发了一个在MS-DOS平台下的商业压缩软件,名为ARC。当时的软件发行方式略有不同,用户购买了软件,除了得到软件的可执行文件还包括一份C语言的源代码。卡茨从网上下载了一份ARC的C语言源代码,并用汇编语言将其全新编写并编译出来,但是也因为造成了对ARC公司的侵权,打了几场官司后,卡茨就制作出新压缩软件PKZIP(Phillip Katz' ZIP),这款全新的软体比ARC的压缩率、压缩性能都要高许多,并且包含更多功能。
因格式开放且免费。越来越多的软件内嵌支持打开Zip文件。这时,Zip文件越来越像一个经过压缩的透明文件夹。它不仅能在Win系统畅行无阻,还能Mac系统中称霸一方。现如今,无论是Win用户还是Mac用户都无需为解压缩操作而单独下载安装相应软件,因为Win和Mac的开发人员已经在系统层面集成了对此格式的支持。
另外 zip 格式相当简单,没有制定统一的标准,导致很多格式问题,比如不同语言的操作系统互传 zip 后打开显示为乱码;同一个文件压缩后 md5 值不一样;不同软件打开同一个压缩文件看到的时间信息不一样等等。
二、Rar格式:RAR 是一种专有的文件格式,用于文件的压缩、归档与打包。RAR 的全名是:Roshal Archive(即“罗谢尔的归档”之意),其开发者是尤金·罗谢尔(Eugene Roshal)。首个公开版本 RAR 1.3 发布于1993年。Roshal 最初编写了 RAR 的 Dos 版本的程序用以编码和解码文件,后来该程序被移植到其他的平台,比较著名的是 Windows 平台上移植版的 Win RAR。Eugene Roshal后来公开了解码程序的源代码,但是编码程序仍然是私有的。
如果你对比过的话会发现 rar 格式的压缩率通常高于 zip,但你大概不知道这是一个专利文件格式,只有收费软件「WinRAR」可以创建rar格式的压缩文件,但其他压缩软件可以解压 rar 文件。目前市场上只有收费软件WinRAR可以创建rar格式的压缩文件,例如BetterZip、WinRar等等。只是创建!我们还是可以使用支持此格式的压缩软件来解压rar文件。
当年电脑刚刚开始普及的时候,软盘容量很小,网络传输速率又慢,压缩率更高的 rar自然成了广大网友分享资源的首选,下载站为了节约带宽成本,也都使用 rar。
Rar与Zip相比还有一个很大的优势,就是其安全性。虽然两种格式都可以设置密码,但此局Rar更胜一筹。前文我们提到Zip是开放免费的,所以Zip格式的压缩文件常常被暴力破解,用户文件的隐私性令人担忧。而RAR填补了这些空白,AES对称加密算法以及长达128位的密码长度都在为文件的安全保驾护航。
三、7z格式:最后你可能还见过7z格式的文件,这是开源软件 「7-Zip 」的开源压缩格式,和 zip 一样,主流的软件都能打开或创建 7z 格式的文件。作为压缩格式中的后起之秀,7z 的压缩率甚至比收费的 rar 还要高,但是它诞生在rar 已经普及的年代,并没有乘上互联网普及的的东风,所以也难以取代 rar 和 zip的地位。7z相当于ZIP格式的升级版。
要注意的是7z为了实现比同届选手更高的压缩率,可谓兵行险招,在算法中使用了包括报头压缩在内的方法,正因如此,一旦7z压缩文件受到损坏,此文件格式修复的可能性就变的很小了。
最后我们来做一下总结和对比:1、压缩率来讲
7z > RAR > ZIP,如果只追求将文件压缩到最小,那么肯定是选择7z格式的最好,
2、普及性来讲
(1)zip格式是最广泛的,win系统和Mac系统在不装第三方App的情况下,是可以打开zip压缩文件的,这也是其他压缩格式所不具备的优势。
(2)Rar格式虽然以很高的压缩率闻名于世,但由于其并不免费,部分用户还是在免费区潜水,而且此格式的创建非收费软件不可,使用的人也就相对少一点。
(3)7z格式完美的继承了Zip的优点,例如强大的曝光力度,被大多数软件兼容,而且在压缩率上进步比较明显,甚至可以超越RAR,但是使用此格式不一定免费。
由上可知,大多数用户还是优先考虑zip、7z格式。因为我们并不知道对方是否有相应的解压工具,例如BetterZip等工具来解压缩Rar文件。
3、压缩速度来讲
高的压缩率是大体量文件的追求,但高的压缩率会以压缩时间为代价。对于Zip、Rar、7z三种格式来说,Rar和7z相差无几,而Zip就比较快了。
综上以上信息来讲,如果你对于压缩时间和传输时间没有要求,也不需要高压缩率的大文件,同时也不想为解压缩文件付费,那么Zip格式就是最好的选择,不需担心对方是否无法解压文件,因为这是所有格式中最省心的,各个平台都能通用。如果你想要将文件压缩小,追求传输速度,那么Rar会是不错的选择,虽然需要付费下载相应软件,但其安全性是其他格式所不具备的。当然,如果想将文件压缩到最小,不妨试试7z格式,虽然会有破损的风险,但越小的压缩包,传输速度越快。最终的选择还是要看用户自己的侧重点。
最后推荐几款好用的压缩包软件:360压缩包(国际版)、Bandizip、Nanazip、7-Zip和PeaZip。