搜索
bottom↓
回复: 27

提高winrar压缩率的方法(能不能申个酷贴啊)

[复制链接]

出0入0汤圆

发表于 2013-11-21 19:16:11 | 显示全部楼层 |阅读模式
本帖最后由 cxhy 于 2013-11-21 19:17 编辑

1·常见文件压缩
             首先我们用WinRAR的最高压缩率对常见的文本文件、程序文件和多媒体文件进行压缩,其压缩结果如下(见图1):
从图1可以看出,多媒体文件压缩比最低,与原文件相差无几,而文本文件和程序文件压缩比要高一些,最高达到3:1,从实际经验来看,我们平时常见的文件压缩比都在10倍以下。

那么,再来看看这个RAR压缩包(见图2),注意其中的原文件大小和压缩后的包裹大小分别为16777215和18407,这是多大的比例?笔者用计算器算了一下,约等于911:1,接近1000倍的压缩比!这是怎么回事?真的假的?跟我一起继续做下面的试验就明白了。

2·把大象装进瓶子里
  这里笔者从自己的电脑里随便找了个文件“数字图像噪声和去除.htm”,这是笔者在浏览网页时使用另存为功能从网上下载的文章,大小为125 KB。
      
第一步:压缩为ZIP文件。右键单击“数字图像噪声和去除.htm”文件,选择“WinRAR→添加到档案文件”,在压缩选项对话框中选择“档案文件类型”为“ZIP”,“压缩方式”为“最好”(见图3),单击“确定”开始压缩。可以看到压缩后的“数字图像噪声和去除.zip”文件只有19 KB,压缩率还不错,不过仍离我们的目标相去甚远。

第二步:用WinRAR打开“数字图像噪声和去除.zip”,记下“大小”列中显示的原文件大小数值“127594”,打开计算器程序,单击“查看”菜单选择“科学型”,输入数字“127594”,再点击“十六进制”选项将其转换为16进制值,结果是“1F26A”(见图4)。

第三步:用UltraEdit编辑器打开“数字图像噪声和去除.zip”文件,我们要在文件中找到“1F26A”的数据,不过由于文件中的十六进制数是高低位倒置表示的,所以我们要查找的数据就变成了“6AF201”,单击“搜索”菜单中的“替换”,将文件中的“6AF201”替换为“FFFFFF”(见图5),共替换两处,文件开头和结尾各一处,替换后保存文件修改。

小提示
  我们前面之所以要选择ZIP压缩格式,而不是直接使用RAR压缩格式,是因为WinRAR对RAR格式的CRC检验非常严格,对文件进行任何修改都会提示压缩错误,而使用ZIP格式压缩,修改后再用WinRAR打开时不会进行严格的CRC检验,没有任何错误提示。
  第四步:现在再用WinRAR打开“数字图像噪声和去除.zip”文件,你会惊奇地发现,压缩包中显示的原文件体积达到了16777 KB(见图6),也就是16 MB!现在你明白我们第三步中所做修改的目的了吧,我们就是要把原文件从“蟋蟀”变成“大象”!而且,现在你把压缩包中的“数字图像噪声和去除.htm”文件解压出来,其文件体积仍然是16 MB,而且可以正常打开浏览。

第五步:接下来就很简单了,把这个修改后的ZIP格式变成RAR格式即可,如果用WinRAR“工具”菜单中的“转换档案文件格式”功能转换后的压缩比会稍微缩小,这里我们直接将“数字图像噪声和去除.zip”改名为“数字图像噪声和去除.rar”,就做成了最开始看到的那个超级压缩包。


3·文件压缩原理
  文件压缩分为有损压缩和无损压缩两种,我们常用的WinRAR、WinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,例如一个文件中有1000个字母A,那么这将占用1KB的数据空间,如果用压缩算法就可以用1000A来表示,那么它只需要5个字节的数据空间,压缩比达到了200倍。
  那么由此看来,1000倍甚至更高倍的压缩比是可以实现的,但要求源文件必须有足够多的重复数据。不过,我们平时使用的文件都不可能是这样的,所以通常文件压缩比都在10倍以下,如果某个软件声称对任何文件都能够产生这种超高压缩比的话,那它肯定就是具有欺骗性质的了。






很多网上下载的文件只有300 MB或400 MB,但是解压后,居然可以达到2 GB甚至更多,也许你会奇怪,为什么你用WinRAR压缩同样的文件,就没有这样的压缩效果呢?其实这是因为这些文件是用多款不同的压缩软件进行压缩的,用压缩音频最好的压缩软件压缩音频文件,用压缩动画最好的压缩软件压缩动画文件。而且在压缩时所选的参数也是最佳的,这样也就保证了最后生成的压缩文件是最小的

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

 楼主| 发表于 2013-11-21 19:17:50 | 显示全部楼层
自己顶一顶啊

出0入0汤圆

 楼主| 发表于 2013-11-21 19:23:28 | 显示全部楼层
秒沉?好伤感

出0入8汤圆

发表于 2013-11-21 19:24:53 | 显示全部楼层
不明觉力。。。有什么意义呢~

出0入134汤圆

发表于 2013-11-21 20:50:34 | 显示全部楼层
纯粹闲得蛋疼

出0入0汤圆

发表于 2013-11-21 20:50:52 | 显示全部楼层
太复杂了,没有意义

出0入0汤圆

发表于 2013-11-21 21:11:49 | 显示全部楼层
并不是把原始文件压小,而是把压完的小文件还原成巨大文件,这压缩率有啥意义,你说是不是纯属蛋疼?

出0入224汤圆

发表于 2013-11-21 21:22:48 | 显示全部楼层
是不是在原文件后面添加了00,或FF,增大原来的文件....

出0入0汤圆

发表于 2013-11-21 22:09:47 来自手机 | 显示全部楼层
想不明白这么做有啥实际意义……

出0入0汤圆

发表于 2013-11-21 22:15:21 来自手机 | 显示全部楼层
zhuzaixingfu 发表于 2013-11-21 22:09 想不明白这么做有啥实际意义……

楼主ID不保,特意来捣乱的,难道是破解的帐号。

出20入25汤圆

发表于 2013-11-21 22:15:40 | 显示全部楼层
这是掩耳盗铃

出0入22汤圆

发表于 2013-11-21 22:20:02 | 显示全部楼层
这跟人民币换成越南币有什么区别?

出0入0汤圆

发表于 2013-11-21 22:20:23 | 显示全部楼层
如果你想买一个虚拟服务器或网站空间的话,你可能会先找一个官方提供的测速文件,实际下载一下它,看看你与服务器间的下载速度有多少,以此决定是否会购买这家的服务,这里面就有个类似的骗局。
HTTP协议其实也是有压缩的,通常是gzip,也可以做类似的欺骗。
服务商可以用一大堆重复性很大的数据压缩后给你,或者构造一个假的压缩后的数据给你。
你的浏览器会自动解压数据,并根据解压后的数据大小和传输时间来显示下载速度。
最终你可能只从服务器拉取了少量“压缩”后的数据,而在本地生成一个很大的文件,而且看起来下载速度非常快。

出0入0汤圆

发表于 2013-11-21 22:23:38 | 显示全部楼层
没啥意义,lz你可以试试用多个不同的文件来压缩,用zip或是rar和你的方法结果相差不会很大。。。
理论上讲,霍夫曼编码可以达到最大的压缩率,现有的压缩软件用的算法,基本上都可以非常接近这个效果。

出0入25汤圆

发表于 2013-11-21 22:25:15 | 显示全部楼层
如果我干这事,肯定是无聊至极,吃饱了撑得的。。
楼主用winhex建一个全0的1G文件,压缩看看,你会高兴得疯了。

出0入0汤圆

发表于 2013-11-21 23:49:31 | 显示全部楼层
hubeilcsun3 发表于 2013-11-21 22:15
楼主ID不保,特意来捣乱的,难道是破解的帐号。

有道理!

出0入0汤圆

 楼主| 发表于 2013-11-22 09:15:56 来自手机 | 显示全部楼层
hubeilcsun3 发表于 2013-11-21 22:15
楼主ID不保,特意来捣乱的,难道是破解的帐号。

在一个网站上看到的,觉得好就分享一下。id不保这个帽子真受不起啊。哪里不和规律,我马上改!!!

出0入0汤圆

发表于 2013-11-22 09:23:02 | 显示全部楼层
楼主的帖子实在是写得太好了,不觉明厉啊!

出0入0汤圆

发表于 2013-11-22 09:30:00 | 显示全部楼层
这哪里是提高压缩率……分明是制造假压缩率好么

出0入0汤圆

发表于 2013-11-22 09:47:22 | 显示全部楼层
用7Z,开源的,
头像被屏蔽

出0入0汤圆

发表于 2013-11-22 09:56:10 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

出0入0汤圆

发表于 2013-11-22 10:17:05 | 显示全部楼层
这个,                                 

出0入0汤圆

发表于 2013-11-22 10:44:53 | 显示全部楼层
这才是赤果果滴蛋疼

出0入0汤圆

发表于 2013-11-22 10:51:38 | 显示全部楼层
楼主能把2G的岛国动作片压成100M的zip我就拜你为师

出0入0汤圆

发表于 2013-11-22 13:49:41 | 显示全部楼层
高壓縮率 用7-zip就是了,一個WinRAR弄來弄去,煩都煩死了

出0入0汤圆

发表于 2013-11-22 17:17:06 | 显示全部楼层
这方法可以拿去装装

出0入0汤圆

发表于 2013-11-22 18:00:01 | 显示全部楼层
winrar普通压缩包是每个文件分别压缩的,对于一个文件夹中有大量重复文件的,可以选择固实压缩方式,可以大大减少压缩包大小。
例如很多例程包中,不同的项目文件夹中都存在相同的头文件库文件,这时就可以发挥固实压缩方式的优势。
这是将文件夹中所有文件同时处理,缺点就是严重降低了压缩处理速度。

出0入93汤圆

发表于 2013-11-22 19:20:22 | 显示全部楼层
NemoGu 发表于 2013-11-22 13:49
高壓縮率 用7-zip就是了,一個WinRAR弄來弄去,煩都煩死了

高压缩率,还是UHA厉害。7z?靠边站去吧,压缩比太低了。
UHA牛X的地方不仅仅是它的高压缩比,还有它超高的资源占用(基本占用CPU 100%),超长的压缩、解压时间(1、2G的文件压缩以天算,解压按小时算)……
7z、rar等等都在压缩比和资源占用、时间占用方面做出了一定的平衡;而UHA则片面追求压缩比,在现在这个硬盘白菜价的时代,已经很少见了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-23 11:20

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表