原创 如何把文件压缩到最小

2009-12-14 21:02 3337 13 11 分类: 工程师职场
                                     如何把文件压缩到最小

 








第一步:压缩为ZIP文件。右键单击需压缩文件(如“数字图像噪声和去除.htm”文件),选择“WinRAR→添加到压缩文件”,在压缩选项对话框中选择“压缩文件格式”为“ZIP”,“压缩方式”为“最好”,单击“确定”开始压缩。可以看到压缩后的“数字图像噪声和去除.zip”文件只有19KB,压缩率还不错,不过仍离我们的目标相去甚远。



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


 



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


小提示


  我们前面之所以要选择ZIP压缩格式,而不是直接使用RAR压缩格式,是因为WinRAR对RAR格式的CRC检验非常严格,对文件进行任何修改都会提示压缩错误,而使用ZIP格式压缩,修改后再用WinRAR打开时不会进行严格的CRC检验,没有任何错误提示。




第四步:文件已压缩。现在再用WinRAR打开“数字图像噪声和去除.zip”文件,你会惊奇地发现,压缩包中显示的原文件体积达到了16777KB,也就是16MB!现在你明白我们第三步中所做修改的目的了吧,我们就是要把原文件从“蟋蟀”变成“大象”!而且,现在你把压缩包中的“数字图像噪声和去除.htm”文件解压出来,其文件体积仍然是16MB,而且可以正常打开浏览。




谜底揭晓了


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




文件压缩原理


  文件压缩分为有损压缩和无损压缩两种,我们常用的WinRAR、WinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,例如一个文件中有1000个字母A,那么这将占用1KB的数据空间,如果用压缩算法就可以用1000A来表示,那么它只需要5个字节的数据空间,压缩比达到了200倍。


  那么由此看来,1000倍甚至更高倍的压缩比是可以实现的,但要求源文件必须有足够多的重复数据。不过,我们平时使用的文件都不可能是这样的,所以通常文件压缩比都在10倍以下,如果某个软件声称对任何文件都能够产生这种超高压缩比的话,那它肯定就是具有欺骗性质的了。




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




如何把文件压缩到最小



瓶子装大象:1000倍压缩比揭秘



引用:


压缩是要看源头的,txt,bmp,wav,doc,xls,这些文件都可以大幅压缩。


JPG - 是对BMP压缩过的文件格式


MP3 - 是对WAV压缩过的文件格式


JPG、MP3就是再放入rar也很难再次压缩,多打N层包也是同样没有用的。



EXE文件的压缩量不好说,主要是有里面带bmp这类的资源,可以被压缩的主要是这一总分;有的EXE已经加过壳,就等于被压缩过了,再打入RAR包则不能因此而减小体积(也就1-5%)。



有一类特殊形式,你有10个目录,每个目录里都有相同的几个文件,也都有各不相同的几个文件。用一种特殊的方式打RAR包后,相同的文件只保存一次,不相同的文件分别保存,就能达到近乎1/10的大小了。但压缩和解压的速度,都相当的慢。



这个功能在RAR软件的帮助里有说明。

文章评论0条评论)

登录后参与讨论
我要评论
0
13
关闭 站长推荐上一条 /2 下一条