导航:首页 > 编程语言 > zip压缩开源代码

zip压缩开源代码

发布时间:2023-02-12 19:35:06

❶ 任务管理器里面Fs-zip File Manager是什么

7-zip又被称作7z、7zip,是一个开放源代码的免费的解压缩软件,提到解压缩软件我们就会想到的winrar和winzip,但是这两款是商业软件,要么收费要么有广告,而 7-Zip 则是完全免费开源且无广告的软件。7-Zip 除了可以支持压缩、解压缩 .zip、.rar、tar、gzip 等常见文件格式外,还独家支持压缩率更高的 .7z 格式。如果你使用7zip,你可以把文件压缩成常见的zip格式,也可以压成7z,为什么要使用这种格式,因为它有着最高的压缩比!所以,如果你经常上传大文件到网络云等网盘的话,使用7z格式打包后上传会节省很多时间。比如盗版系统的驱动安装时解压缩的驱动事先都是压缩成7z格式的,所以一张小小的700M的光盘可以包含一个系统和大部分的驱动程序,如果把这些驱动程序统统解压的话,那有600M,或者更多!是不是很厉害!

当然,你读到这可能会担心,如果别人的电脑上的压缩软件不支持7z格式怎么办呢?据十玩所知,winrar是支持这种格式的,是在不行,你可以使用7zip带有的自解压功能,即使系统上没有解压缩软件,你也可以把文件解压出来。7z这种格式除了高压缩比、自解压、支持文件头压缩、支持固实压缩这些特点外能够兼容任意压缩、转换、加密算法,还支持AES-256加密,支持最大16000000000GB文件的压缩,文件名使用Unicode,比如UTF-8格式就包含在内,所以使用7z压缩的软件在linux和MAC系统下是不会乱码的,也不会在压缩和解压缩时造成问题。

更惊讶的是7zip支持多种系统,包括Windows 10 ~ XP、MAC、linux、solaris、DOS、wince等。提供了极其优异的兼容性和稳定性,所以如果你使用多种操作系统,支持包括简体中文在内的87种语言,那么使用7zip这个压缩软件是个非常合适的。7zip和winrar是相似的操作界面,并且在右键中也包含压缩和解压缩的菜单(有压缩成zip或7z,如果不习惯压成7z可以压成zip)。而且由于开源免费,你还在可以将 7-ZIP 用于公司或商业用途不必担心版权问题。

❷ 压缩文件*.rar和*.zip的区别 用哪个好详细介绍谢谢

楼上的见解比较狭隘。我来全面的解释一下。

一、目录表(TOC)与分卷(Volume)

抛开压缩算法不谈,我认为zip、rar在文件格式上最大的差异就在目录表(Table of Contents,TOC):zip有TOC,而rar没有。

TOC这个词其实是从出版界借用过来的,指的就是每一本书正文前面的“目录”,它的作用地球人都知道:如果想快速找到书中某一内容,可以先查TOC,然后按照TOC指明的页码直接翻即可。

在纸质书里TOC是印刷出来的一张表,而在电子文件里则是由结构化数据构成的一张表,它的目的同样是为了快速定位:如果想找文件中的某一内容,可以先查TOC,知道感兴趣的内容在文件的什么位置,直接跳过去就行了。最常见的运用就是avi、rm等多媒体文件:播放的时候经常有人在播放条上点来点去跳着看(即“随机访问”),如果没有TOC,在长达几百兆的文件里来回定位会慢死。

具体到zip文件里,TOC是放在文件尾部的一张表,里面列出了zip包中每一个文件的属性(文件名、长度等)和在zip包中的存放位置。如果需要随机访问zip包中的某一个文件,只需在TOC里找到这个文件的存放位置,直接跳过去即可。

而RAR文件里则没有TOC,在文件头之后所有文件按顺序连续存放。

这种差异造成的结果就是:随机访问时zip比rar快,而顺序访问时rar比zip快。

所谓随机访问,就是前面说过的随机访问压缩包中某个指定的文件。举一个简单的例子:一本反编译或下载到的网页电子书,有大量HTML、图像、css、js,然后打成压缩包。现在要求在不解包的情况下访问其中的页面:可以想象,打开每个HTML页面的时候,它所附带的图像、css、js等文件可能随机分布在整个压缩包里,如果没有TOC,查找每个文件的时候都要从头开始找,将会有多慢。 所以各位可以理解为什么jar包就是标准zip包,而我也只用zip格式保存反编译出来的电子书、漫画、PDG书等一切可能需要随机访问的东西。

所谓顺序访问,就是将整个压缩包从头解到尾。在这方面RAR具有天然的优势。而且为了节省WinRAR列文件的时间,对于单个RAR我一般都直接通过右键菜单解压缩,很少双击压缩包打开再解压。

由于rar的原作者已经去世,造成这种差异的确切原因我相信已不可考,但我个人猜测可能与DOS时代的备份软件之争有关:在DOS时代,电脑硬盘不像现在这样奢侈,20MB就算很大了。这样的容量用两盒软盘 即可备份,备份成本相对数据本身的价值来说非常低廉。因此在DOS时代,很多公司和机构都制定有定期硬盘备份政策,以免因为人为或非人为的因素 (早期硬盘可没有如今可靠)而造成不可挽回的数据损失。在备份软件方面,虽然微软已经随DOS提供了BackupRestore工具,但是他们基本不具备数据压缩能力,因此在压缩软件中提供备份功能,就成为DOS时代的一个时尚。由于DOS时代的备份介质多为软盘,因此压缩 软件的备份功能其实就转化成如今很常见的一个功能:分卷压缩功能,即按照软盘容量进行分卷压缩,然后将分卷压缩文件备份(Backup)到软盘,需要的时候再解压,或恢复(Restore)到硬盘。

DOS时代最有名的zip工具是pkzip,出现得比DOS版的RAR早。在分卷压缩时,pkzip按照zip文件规范,将TOC存放在最后,即存储在最后一卷,由此带来如下问题:

1、恢复时,每解压一张盘,都要先将最后一张盘插进去一次,读一次TOC。
2、只要最后一张盘上的TOC坏了,就算其它盘都是好的,也不能正常解压。

这两个缺点,尤其是第一个缺点实在是太臭名昭著了,因此当时出现了非常强烈的改革呼声。在这个关键时刻,DOS版的RAR出现了:不仅压缩率比pkzip高(这点在DOS时代非常重要,毕竟软盘又贵容量又小),而且由于吸取了当时对zip格式的批评,取消了TOC,因此:

1、在恢复分卷压缩的备份文件时,不需要频繁插入带有TOC的分卷,按顺序换盘即可。
2、即使某个分卷损坏,也可以跳过,从完好的分卷再开始解压。

由于这些原因(当然还有其它原因),RAR推出后迅速取得了成功,pkzip在DOS时代就开始流失用户,到Windows时代基本消声匿迹。在Windows时代推出的Winzip,则彻底放弃了分卷压缩功能(zip格式永远的痛?)。 而从我看到的源自WinRAR的UnRAR源代码来看,现在WinRAR的解压思路明显还是把文件按顺序从头解到尾,看来当年备份恢复工具之争的影响,还真是深远。

二、固实(solid)压缩方式

在压缩算法方面,我觉得rar格式最特色的是固实(solid)压缩方式。WinRAR v3.42的帮助文件中对固实压缩的说明如下:

固实压缩文件是 RAR 的一种特殊压缩方式存储的压缩文件,它把压缩文件中的全部文件都当成一个连续数据流来看待。

这段说明其实揭示了固实压缩格式能够提高压缩比的奥秘:数据压缩的基础是“重复”,例如aaaabbb这个字符串,里面就有重复,如果表示为a4b3,看起来是不是变短了?这就是“数据压缩”。“重复”是一个具有相对意义的概念,在某一范围内看起来没有重复,或重复不多的数据,把范围扩大,说不定就能找到更多重复的数据了,这就是固实压缩的奥秘。

举一个简单的例子:用zip和普通rar压缩一堆jpg文件,很难压下去,但是用固实压缩方式的rar就可以,其原因就在于:jpg文件本身已经是压缩格式了,单个jpg文件里很难再 找到可利用的重复数据,因此不论是用zip还是普通的rar都很难再压缩,因为他们都将需要压缩的文件分隔开来一个一个处理。但是对于固实rar来说,是将 所有需要压缩的jpg文件当作一个整体来压缩,这些jpg之间就存在重复的数据,如他们都有相同的文件头(其中包括各种数据表)等,这就出现了可压缩的空间。从我看到的资料来看,Flash文件也采用了类似的技术对jpg进行压缩:如果在Flash文件中使用了多个jpg文件,它们可以共用一个文件头。

当然天下不会有白吃的午餐,固实压缩方式在提高压缩比的同时,也有一些限制,在WinRAR v3.42帮助文件中的说法是:

固实压缩可增加压缩性能,特别是在添加大量的小文件的时候,但它也有一些重要的不利因素

对已存在的固实压缩文件更新时较慢;
要从固实的压缩文件解压单个文件时,它之前的文件都需先经过分析。这造成当从固实的压缩文件内取出文件时会比一般压缩文件取出文件慢一些。但是,当从固实的压缩文件解压全部的文件时,解压速度并没有影响。
如果在固实压缩文件中的任何文件损坏了,要从损坏的范围中解压全部的文件是不可能的。因此,如果固实压缩文件是保存在例如软盘等媒介时,推荐你在制作时使用“恢复记录”。
固实压缩的适用场合为

压缩文件很少更新的时候;
不需要经常从压缩文件中解压一个文件或是部分文件的时候;
压缩效率比压缩速度更为重要的时候。
与前面说的“随机访问”对应,固实压缩的RAR文件可能是世界上最不适合随机访问的:如果需要访问固实RAR包中的某个文件,就要从文件头开始解压,一直解到这个文件。

三、安全性

这里的安全性包含几个方面的含义:文件系统安全性、密码保护安全性和文件数据安全性。

由于制订zip格式规范的时候操作系统本身的文件安全性还没有引起足够的重视,因此zip格式只记录最基本的文件属性,包括只读属性等,没有其它附加的安全属性。

rar格式刚推出的时候,文件系统的安全性只能参照DOS,和zip差不多。但是rar毕竟是一种封闭的格式,想怎么改作者一个人说了就算,因此当Windows中出现NTFS,并且引入扩展的文件系统安全属性时,rar也积极跟进,所以现在应该说rar格式在这方面比zip强 。

在zip和rar格式中均提供了密码保护功能,但是密码保护的安全强度不同。

zip由于格式开放、代码开源,因此zip密码破解软件出现得比较早,也比较多。初期以暴力破解为主,威胁不大,真正对zip密码安全的致命一击是known plain text(已知明文)攻击法:如果知道加密zip文件中某段内容(密文,ciphertext)解密后的真正内容(明文,plain text),就可以反推出zip加密口令。在这种攻击方法的威胁,及某些国家的法律对密码技术的限制下, 著名开源组织zlib宣布永久放弃对加密zip的支持,详见zlib网站上的相关说明(不过在zlib发行的源代码里仔细找找,还是能找到原来的加解密相关代码)。

记得rar刚推出的时候也和zip一样,虽然不能列出加密文件中的文件内容,但可以列出加密文件中的文件名。后来大概也是被known plain text攻击法吓到了,增加了一个“加密文件名”选项,干脆连加密rar文件里有哪些文件都看不见,让攻击者想猜明文都无从猜起。

rar格式比zip晚推出,在安全方面吸取了足够的教训,因此采用的是美国国家标准与技术局(National Institute of Standard and Technology, NIST)推荐的、目前公认安全程度比较高的AES对称加密算法 ,密钥长度128位。在ASE被攻破以前(NIST认为30年内无法攻破),大家都只能在暴力法上兜圈子,所以密码安全性应该说比zip高。对此WinRAR 3.42的帮助文件是这样描述的:

ZIP 格式使用私有加密算法。 RAR 压缩文件使用更强大的 AES-128 标准加密。如果你需要加密重要的信息,选择 RAR 压缩文件格式会比较好一些。为了确实的安全性,密码长度请最少要 8 个字符。不要使用任何语言的单词作为密码,最好是任意的随机组合字符和数字,并且要注意密码的大小写。请记住,如果你遗失你的密码,你将无法取出加密的文件,就算是 WinRAR 的作者本身也无法解压加密过的文件。

在数据安全性方面,RAR格式本身支持一种特殊的附加信息类型,叫做“恢复记录”。如果RAR文件有恢复记录,在介质物理损坏或其它原因造成数据丢失时,WinRAR可以按照“恢复记录”尝试对数据进行修复。而zip格式无恢复记录,因此在数据安全性方面应该说比RAR弱。

虽然RAR文件本身支持恢复记录,但是在WinRAR里此选项缺省是关闭的,而打开后会导致压缩出来的RAR文件体积增加(增加的百分比与设置有关),可能会令某些人感到不习惯(我就亲眼见到有人在论坛上抱怨为什么压出来的RAR文件会如此庞大),所以这个功能基本上形同虚设。

四、开放性

开放性的对比很明显:zip格式不仅文件格式完全公开,而且有专门的开源组织提供操作源代码,跨平台使用也没有多大限制;rar格式完全保密,作者只提供解压所需源代码,不提供压缩所需源代码 ,跨平台使用有点麻烦。

zip开源组织中,最出名的是zlib和InfoZip,二者各有侧重:zlib偏重对内存缓冲区的压缩,因此被png等开源组织用做内部压缩算法,连java的jar程序内核都来自zlib,打出来的jar包自然也是一个标准的zip文件;InfoZip偏重对文件的操作 (包括口令保护),应用似乎不如zlib广泛,但我个人觉得其实它还是满好用的,前提是需要对它的源代码进行一些必要的修改。

在png组织的网页中有说到png格式的来历,我觉得也很有意思:做png的一班人,其实原来都是做gif格式的,但是由于Unisys公司开始对gif格式的核心——LZW压缩算法征收专利费,这帮人怒了,干脆提出png格式:大结构方面还是采用分段结构,但是核心压缩算法采用开源的zlib,压缩 效果在多数情况下比gif的LZW更强。由于没有版权限制,在静态图形领域png得到广泛应用,如果不是及时提出动画支持并因此在web上大行其道,我估计gif早就死掉了。

RAR的解压源代码在其官方网站www.rarlab.com上提供,通常比WinRAR的正式版本晚一点,不过据说是直接从WinRAR的源代码中抠出来的,所以兼容性应该没有什么问题。

五、结论

以下观点纯属个人观点,仅供参考,不具有如何指导意义:

如果经常需要对压缩包进行随机访问,应该选zip而不是rar。虽然将下载到的rar重新压缩成zip会麻烦一次,但是以后会减少无数的麻烦。
如果需要分卷压缩(如某些网站对上传文件大小有限制),则只能用rar。事实上,这也是我唯一会使用rar格式的场合,其它时候一律zip没商量。

❸ 扩展名为“.rar”和“.zip”的压缩文件有什么不同

一、发明者不同

1、rar:是一种专利文件格式,用于数据压缩与归档打包,开发者为尤金·罗谢尔。

2、zip:是一种数据压缩和文档储存的文件格式,原名Deflate,发明者为菲尔·卡茨。

二、特点不同

1、rar:RAR通常情况比ZIP压缩比高,但压缩/解压缩速度较慢。分卷压缩:压缩后分割为多个文件。

2、zip:指出文件可以不经压缩或者使用不同的压缩算法来存储。然而,在实际上,ZIP几乎差不多总是在使用卡茨(Katz)的DEFLATE算法。


三、加密算法不同

1、rar:RAR 2.0使用AES-128-cbc,(rar5.0以后为AES-256CBC)。之前RAR的加密算法为私有。加入冗余数据用于修复,在压缩包本身损坏但恢复记录够多时可对损坏压缩包进行恢复。

2、zip:持基于对称加密系统的一个简单的密码,现在已知有严重的缺陷,已知明文攻击,字典攻击和暴力攻击。ZIP也支持分卷压缩。


❹ zip文件压缩的c语言实现

我也想知道,帮顶

❺ RAR与ZIP的区别

zip将目录表放在压缩包的最后,其中列出了包中每一个文件的属性(文件名、文件大小等)和其在包中存放的位置,如果需要直接访问包中的某个文件,可以根据这个目录直接进行定位。RAR没有目录表,所有文件按照顺序依次压缩存放。这样导致的区别就是:随机访问文件时,zip的速度要快于rar,如果赶上文件在压缩包的最后且包内文件很多,rar的速度就显得很慢了(其实也不过几秒钟)。但是顺序访问时,rar的速度就要快于zip,因为不用反复去查目录。

分卷压缩
在DOS时代,由于软盘容量很小,因此分卷压缩是很必要的。但是由于zip将文件目录表放在压缩包的最后,导致每解压一张盘,都要先将最后一张盘插进去一次读取目录,而且如果最后一张盘损坏,所有文件都无法被解压。而rar由于没有文件目录表,就没有这个问题。到了windows时代,zip则彻底放弃了分卷压缩功能。

固实压缩方式
固实压缩文件是rar的一种特殊压缩方式存储的压缩文件,它把压缩文件中的全部文件都当成一个连续数据流来看待,从而找到更多的冗余信息(Flash文件也采用了类似的技术)。压缩前会对文件进行重新排序,将拥有相似结构的文件排列在一起。这样对于大量类似的文件,压缩比有显著的提高。但是缺点也很明显的:随机解压任何一个文件都要从压缩包头部开始分析,速度较慢;对已有固实压缩包更新时速度较慢;包中任何一个文件损坏后,都不能解压出全部文件。

安全性
zip和rar格式中均提供了密码保护功能,但是密码保护的安全强度不同。由于zip格式开放、代码开源,因此当出现“已知明文攻击法”之后,对zip的挑战很大。rar为了避免通过猜测文件名来使用“已知明文攻击法”,增加了“加密文件名”选项,并且使用了 AES-128 标准加密。
在数据安全性方面,rar支持“恢复记录”,在介质物理损坏或其它原因造成数据丢失时,可以按照“恢复记录”尝试对数据进行修复,而zip格式无恢复记录。ZIP 格式使用私有加密算法。 RAR 压缩文件使用更强大的 AES-128 标准加密。如果你需要加密重要的信息,选择 RAR 压缩文件格式会比较好一些。为了确实的安全性,密码长度请最少要 8 个字符。不要使用任何语言的单词作为密码,最好是任意的随机组合字符和数字,并且要注意密码的大小写。请记住,如果你遗失你的密码,你将无法取出加密的文件,就算是 WinRAR 的作者本身也无法解压加密过的文件。

开放性
zip格式公开、代码开源,而rar完全保密,不利于跨平台。java的jar包内核来自zip算法,而png格式的出现是为了避免gif格式的专利费,所以也采用了zip核心,压缩效果比gif的lzw更强。

❻ Zip是开源的吗

我们通常说的zip,是一种计算机文件的压缩的算法,原名Deflate(真空),发明者为菲尔·卡茨(Phil Katz)),他于1989年1月公布了该格式的资料。因此,这是一种公开的压缩算法。
这种算法的实现代码,在网上就可以找到很多~
比较著名的开源压缩软件,比如7-zip之类的,都包含了改算法的实现。

❼ 请问RAR和ZIP有什么区别

1、压缩算法不同

rar格式能够提供更好的压缩率,zip是一种开放性的压缩文件,算法不局限于一种,zip的优势是压缩速度快。

2、功能不同

rar不支持恢复记录,zip支持物理受损数据的恢复,还可以锁定重要压缩文件。

3、大小不同

rar可以管理的文件大小几乎是无限制的,zip处理单个文件的最大值为4GB。

(7)zip压缩开源代码扩展阅读:

安全性问题

zip和rar都可设密码保护,但是rar安全性更强。由于zip广泛被使用并且代码开源的原因,压缩文件被暴力破解是常有的事情。而对于zip密码来说“明文攻击”更是致命的。如果了解到被加密压缩zip文件的某段内容就可以反推zip加密口令。

而rar是“前车之鉴”吧,它的出现就很好弥补了zip的安全性问题。采用的是目前公认的安全系数很高的AES对称加密算法,密码长度可达128位字符。即便你跑字典暴力破解搞到天荒地老也解不开。

❽ rar和zip有什么区别呢

一、优势不同:

1、rar:

RAR通常情况比ZIP压缩比高,但压缩/解压缩速度较慢。

2、zip:

RAR较ZIP格式压缩率较高,而Zip由于提供了免费的压缩工具而逐渐在更多的领域得到应用。

二、功能不同:

1、rar:

相比zip而言,rar功能更强大。比如rar独有的solid压缩方式、或者可以锁定压缩文件防止被修改、又比如恢复记录功能,可对物理受损数据进行恢复等。

2、ZIP:

ZIP的规约指出文件可以不经压缩或者使用不同的压缩算法来存储。加入了包括新的压缩和加密方法的新特征,不过这些新特征并没有被许多任务具所支持并且没有得到广泛应用。

文件安全性

zip和rar都可设密码保护,但是rar安全性更强。由于zip广泛被使用并且代码开源的原因,压缩文件被暴力破解是常有的事情。而对于zip密码来说“明文攻击”更是致命的。如果了解到被加密压缩zip文件的某段内容就可以反推zip加密口令。

而rar是“前车之鉴”,它的出现就很好弥补了zip的安全性问题。采用的是目前公认的安全系数很高的AES对称加密算法,密码长度可达128位字符。

以上内容参考:网络-rar

以上内容参考:网络-Zip

❾ 压缩为zip是什么意思

活力

ZIP是指具有高存储密度的磁盘驱动器和磁盘。ZIP磁盘的容量约为100MB,大小与传统的3.5英寸软盘相似。还有LS-120 120MB大容量磁盘,其磁盘驱动器可以读取传统的3.5”软盘,但访问速度略低于ZIP。

ZIP是一种压缩计算机文件的算法,最初被命名为Deflate(真空),由菲利普·卡兹发明,他在1989年1月以这种格式发布了数据。ZIP通常使用后缀“.”。zip”,其MIME格式为application/zip。目前,ZIP格式是几种主流压缩格式之一,其竞争对手包括RAR格式和开源代码的7-Zip格式。在性能方面,RAR格式比ZIP格式具有更高的压缩率,而7-Zip由于提供了免费的压缩工具,逐渐被应用在更多的领域。

❿ RAR和ZIP两种格式的压缩算法分别是什么

压缩算法RAR是私有算法。zip一般是Deflate或Deflate64,开源的。RAR可以将文件名加密,ZIP就不可以。现在两者的解密基本都是跑字典。

阅读全文

与zip压缩开源代码相关的资料

热点内容
手机vmos导入的文件在哪里 浏览:115
苹果手机可以把文件传到华为吗 浏览:63
海川化工下载的文件默认到哪里 浏览:343
学唱粤语歌app 浏览:975
qq游戏生死狙击玩不了 浏览:120
win10邮件不显示图片 浏览:922
口袋妖怪所有版本下载 浏览:504
我们身边都有哪些大数据例子 浏览:25
震旦adc307扫描的文件在哪里 浏览:999
图片打开变成文件 浏览:194
松下微单电脑传文件软件 浏览:574
苹果蓝牙键盘surface 浏览:170
mindmaplinux 浏览:733
oppo手机怎么连接电脑传输数据 浏览:624
word删除尾注分隔符 浏览:773
公告质疑需要哪些文件 浏览:608
数据库模型是干什么的 浏览:404
win10的驱动怎么安装驱动 浏览:320
word文件水印怎么取消 浏览:443
rhel6的镜像文件在哪里下载 浏览:571

友情链接