无忧启动论坛

标题: 关于1G的文件压成1M的文件 [打印本页]

作者: 摩东王子    时间: 2010-10-8 22:00
标题: 关于1G的文件压成1M的文件
  1.常见文件压缩
  首先我们用WinRAR的最高压缩率对常见的文本文件、程序文件和多媒体文件进行压缩,其压缩结果如下(见图1):


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


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


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


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


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


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

这个都是硬连接,wim中的重复文件不占空间的
作者: lsbzhe    时间: 2010-10-9 10:58
支持楼主,很有创意。。。。。。
作者: wowfans    时间: 2010-10-11 12:38
机器内存足够大 CPU足够强

开始,运行,maspaint
图像 属性 分辨率设置成10000 ×10000
如果你对你的机器有信心 试试设置成10万×10万。。。。。小心卡鸡鸡。。
然后保存为bmp位图 应该在1G左右
压缩后 应该是几十K或者10几K
作者: 497734601    时间: 2010-11-14 12:17
不实用啊,但是是一种技术,路过
作者: kim_haneul    时间: 2010-11-18 11:26
要压缩率高的话用7-ZIP或FreeArc吧!不过正常的文件从1G压缩到1M是不可能的。
作者: lb30103    时间: 2010-11-18 12:50
为什么压缩软件与系统备份软件在速度上差这么大呢?




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3