hiwuhan
无名小卒

[学习类] [IT与网络] [TXT] [BT/网盘] 关于1G的文件压缩成1M的方法

-->

1·常见文件压缩

  首先我们用WinRAR的最高压缩率对常见的文本文件、程序文件和多媒体文件进行压缩,其压缩结果如下(见图1):
           






                    
                  图1  压缩后分别还是挺大的
  从上图可以看出,多媒体文件压缩比最低,与原文件相差无几,而文本文件和程序文件压缩比要高一些,最高达到3:1,从实际经验来看,我们平时常见的文件压缩比都在10倍以下。
  那么,再来看看这个RAR压缩包(见图2),注意其中的原文件大小和压缩后的包裹大小分别为1677721518407,这是多大的比例?笔者用计算器算了一下,约等于911:1,接近1000倍的压缩比!这是怎么回事?真的假的?跟我一起继续做下面的试验就明白了。
  

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

                       

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

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

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

                     
                          图6  谜底揭晓了
第五步:接下来就很简单了,把这个修改后的ZIP格式变成RAR格式即可,如果用WinRAR“工具”菜单中的“转换档案文件格式”功能转换后的压缩比会稍微缩小,这里我们直接将“数字图像噪声和去除.zip”改名为“数字图像噪声和去除.rar”,就做成了最开始看到的那个超级压缩包。
  3·文件压缩原理
  文件压缩分为有损压缩和无损压缩两种,我们常用的WinRARWinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,例如一个文件中有1000个字母A,那么这将占用1KB的数据空间,如果用压缩算法就可以用1000A来表示,那么它只需要5个字节的数据空间,压缩比达到了200倍。
  那么由此看来,1000倍甚至更高倍的压缩比是可以实现的,但要求源文件必须有足够多的重复数据。不过,我们平时使用的文件都不可能是这样的,所以通常文件压缩比都在10倍以下,如果某个软件声称对任何文件都能够产生这种超高压缩比的话,那它肯定就是具有欺骗性质的了。
  小编有话说:很多网上下载的文件只有300 MB400 MB,但是解压后,居然可以达到2 GB甚至更多,也许你会奇怪,为什么你用WinRAR压缩同样的文件,就没有这样的压缩效果呢?其实这是因为这些文件是用多款不同的压缩软件进行压缩的,用压缩音频最好的压缩软件压缩音频文件,用压缩动画最好的压缩软件压缩动画文件。而且在压缩时所选的参数也是最佳的,这样也就保证了最后生成的压缩文件是最小的



1 条评分记录 操作 积分 金币 点评 时间

大地的精灵 评分 +1 +5 2013-9-18

#1楼
发帖时间:2013-09-14 17:12:09   |   回复数:21
pp5852531
武林高手

2013-10-5 #2楼
afu911
江湖小虾
没太看懂 意思是把源文件变得更大 就显得压缩得更好么 那其实还是一样的效果啊
2013-10-6 #3楼
541877644
小有名气
长姿势
2014-1-21 #4楼
541877644
小有名气
长姿势
2014-1-21 #5楼
weiyi604
江湖小虾
感谢楼主的分享
2014-2-21 #6楼
wyg0216
江湖小虾
厉害,学习了。
2014-3-24 #7楼
半面泪妆
小有名气
似懂非懂
2014-3-31 #8楼
大水哥
小有名气
那还是会有损耗吧
2014-3-31 #9楼
小灬寒
小有名气
感谢楼主分享,收藏!  
2014-4-13 #10楼
rusAPP
江湖小虾
这不叫     '方法'    吧?
要是有个内容全部都是 ‘12345’的文章,把它剪贴成2G的大小,压出来可能连1m都不到,但这样有什么意义?真是无言。
2014-4-28 #11楼
ω简单灬戀♥
江湖小虾
我来挣积分
2014-4-28 #12楼
just2chen
小有名气
把小文件变成大文件,有什么意义?
2014-11-25 #13楼
skittle2009
江湖小虾
是不是压缩比大的重复内容就多,这个。。。。。
2014-11-30 #14楼
lys518
一派掌门
我太业余。。。
2015-1-3 #15楼
羽懿521
无名小卒
厉害,学习了
2015-1-22 #16楼
天流云
小有名气
不懂。
2015-3-8 #17楼
skp669
一派掌门
长姿势
2015-3-8 #18楼
127888
江湖小虾

2015-11-19 #19楼
QP2005
小有名气
没意义的
2016-2-13 #20楼
游客组