心情论坛 » 『计算机技术』 » 关于1G的文件压成1M的文件


2007-6-24 14:24 zsq123
关于1G的文件压成1M的文件

[color=red]真有这么神奇吗?显然是不太可能,如果真的可以压缩到千分之一,那么这款软件要多么神奇呀。[/color] } l#rf"r,D#y..
  1.常见文件压缩
5L,e8pTb5UV7p..
.b0Ul ?JKa..   首先我们用WinRAR的最高压缩率对常见的文本文件、程序文件和多媒体文件进行压缩,其压缩结果如下(见图1):h.U A$sOID2a..
[img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_1.jpg[/img]
$p(S \ FB/q3e(w0f?'A..
~)S"m2v0C0J!~_d.. 压缩后分别还是挺大的
#UW3j@&]..
(KP_)V'k,p..   从上图可以看出,多媒体文件压缩比最低,与原文件相差无几,而文本文件和程序文件压缩比要高一些,最高达到3:1,从实际经验来看,我们平时常见的文件压缩比都在10倍以下。?tD#y3|8O..

m9t IdS_BB&u..   那么,再来看看这个RAR压缩包(见图2),注意其中的原文件大小和压缩后的包裹大小分别为16777215和18407,这是多大的比例?笔者用计算器算了一下,约等于911:1,接近1000倍的压缩比!这是怎么回事?真的假的?跟我一起继续做下面的试验就明白了。
-ao L@F'y.. [img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_2.jpg[/img]1\(w-o2S-isS"k..

0L"Hr)A/K&r*P-A-]"N..
pJy)\e1x.. 这个简直是不可思议
QH b A.AG..
T6~K7Y vUyfH..   2.把大象装进瓶子里
gqn'OA"aW..
O_8t9Zp,\x0z&l#L..   这里笔者从自己的电脑里随便找了个文件“数字图像噪声和去除.htm”,这是笔者在浏览网页时使用另存为功能从网上下载的文章,大小为125KB。 Q#f/]#Co*k0F..
  
WEBPf..   第一步:压缩为ZIP文件。右键单击“数字图像噪声和去除.htm”文件,选择“WinRAR→添加到档案文件”,在压缩选项对话框中选择“档案文件类型”为“ZIP”,“压缩方式”为“最好”(见图3),单击“确定”开始压缩。可以看到压缩后的“数字图像噪声和去除.zip”文件只有19KB,压缩率还不错,不过仍离我们的目标相去甚远。'`%k4U5n*aQ+dn..
[img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_3.jpg[/img]
1~/S`Q0y'FK.. Ven W#ctx..

u%e6rN%J6H.. 第二步:用WinRAR打开“数字图像噪声和去除.zip”,记下“大小”列中显示的原文件大小数值“127594”,打开计算器程序,单击“查看”菜单选择“科学型”,输入数字“127594”,再点击“十六进制”选项将其转换为16进制值,结果是“1F26A”(见图4)。
5D"|;U;nR4r&l:^.. [img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_4.jpg[/img]'}5p9X'j/BSY2}U..
M7?3g$^c Eb..

[efpF]*j.. 用科学型计算器认真算一下
%a8n2p2iPe"r }|.. ,t:@S-Vj}v0L..
 第三步:用UltraEdit编辑器打开“数字图像噪声和去除.zip”文件,我们要在文件中找到“1F26A”的数据,不过由于文件中的十六进制数是高低位倒置表示的,所以我们要查找的数据就变成了“6AF201”,单击“搜索”菜单中的“替换”,将文件中的“6AF201”替换为“FFFFFF”(见图5),共替换两处,文件开头和结尾各一处,替换后保存文件修改。NR ]gMLCRh..
[img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_5.jpg[/img](m r!m#jK ].izP..
2@7s@4f)I7[..
替换数值
.z/V]+HL[N}.. {b9o3ztf..
小提示Q$V[8~ZfHF..
Ao/\l2cY V2Dkt..
  我们前面之所以要选择ZIP压缩格式,而不是直接使用RAR压缩格式,是因为WinRAR对RAR格式的CRC检验非常严格,对文件进行任何修改都会提示压缩错误,而使用ZIP格式压缩,修改后再用WinRAR打开时不会进行严格的CRC检验,没有任何错误提示。 \"mV6aRN..

.PR)K&x6kWoIX..   第四步:现在再用WinRAR打开“数字图像噪声和去除.zip”文件,你会惊奇地发现,压缩包中显示的原文件体积达到了16777KB(见图6),也就是16MB!现在你明白我们第三步中所做修改的目的了吧,我们就是要把原文件从“蟋蟀”变成“大象”!而且,现在你把压缩包中的“数字图像噪声和去除.htm”文件解压出来,其文件体积仍然是16MB,而且可以正常打开浏览。 YsE/L:Z(nW9qf..
[img]http://www.pconline.com.cn/pcedu/soft/gj/zip/0507/pic/76ys_6.jpg[/img]Y9Nn1Lu)T..

[.{Q:p y?c.. (l%^+z(Nx$N G..
谜底揭晓了
,b\\:pN7j+tE6F^8Q..
cpByU |`rm.. 第五步:接下来就很简单了,把这个修改后的ZIP格式变成RAR格式即可,如果用WinRAR“工具”菜单中的“转换档案文件格式”功能转换后的压缩比会稍微缩小,这里我们直接将“数字图像噪声和去除.zip”改名为“数字图像噪声和去除.rar”,就做成了最开始看到的那个超级压缩包。
$[ K0Y"R'j4ul1n;^.. 8xE s.wCnC!Lf..
  3.文件压缩原理tR!{/B.e9F.cg..

q%u9\]6~@{l#q~-f..   文件压缩分为有损压缩和无损压缩两种,我们常用的WinRAR、WinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,例如一个文件中有1000个字母A,那么这将占用1KB的数据空间,如果用压缩算法就可以用1000A来表示,那么它只需要5个字节的数据空间,压缩比达到了200倍。
7h} z%r6J)^2f.. Zn^9Z6J.P5dr5x..
  那么由此看来,1000倍甚至更高倍的压缩比是可以实现的,但要求源文件必须有足够多的重复数据。不过,我们平时使用的文件都不可能是这样的,所以通常文件压缩比都在10倍以下,如果某个软件声称对任何文件都能够产生这种超高压缩比的话,那它肯定就是具有欺骗性质的了。1oU8HG5D8u&A-O$_..
(`,^6e7\R!FY..
  很多网上下载的文件只有300MB或400MB,但是解压后,居然可以达到2GB甚至更多,也许你会奇怪,为什么你用WinRAR压缩同样的文件,就没有这样的压缩效果呢?其实这是因为这些文件是用多款不同的压缩软件进行压缩的,用压缩音频最好的压缩软件压缩音频文件,用压缩动画最好的压缩软件压缩动画文件。而且在压缩时所选的参数也是最佳的,这样也就保证了最后生成的压缩文件是最小的。

页: [1]


Powered by © 2002-2024 www.eXinQing.net