首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2024国际航空电子大会
2024国际 AIoT 生态发展大会
3D IC 设计和Chiplet资料下载
车载总线测试和解码方案
新能源汽车三电测试技术中心
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
论坛
博文
电子工程专辑
电子技术设计
国际电子商情
资料
白皮书
研讨会
芯语
文库
登录|注册
登录
用户461316
修改
文章:
273
阅读:
1173599
评论:
1065
赞:
2068
好友
私信
个人主页
文章
273
原创
0
阅读
1173599
评论
1065
赞
2068
原创
把1G的文件变成1M的方法
2008-10-25 03:37
3344
12
18
分类:
工程师职场
1.常见文件压缩
首先我们用WinRAR的最高压缩率对常见的文本文件、程序文件和多媒体文件进行压缩,其压缩结果如下(见图1):
压缩后分别还是挺大的
从上图可以看出,多媒体文件压缩比最低,与原文件相差无几,而文本文件和程序文件压缩比要高一些,最高达到3:1,从实际经验来看,我们平时常见的文件压缩比都在10倍以下。
那么,再来看看这个RAR压缩包(见图2),注意其中的原文件大小和压缩后的包裹大小分别为16777215和18407,这是多大的比例?笔者用计算器算了一下,约等于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压缩格式,是因为WinRAR对RAR格式的CRC检验非常严格,对文件进行任何修改都会提示压缩错误,而使用ZIP格式压缩,修改后再用WinRAR打开时不会进行严格的CRC检验,没有任何错误提示。
第四步:现在再用WinRAR打开“数字图像噪声和去除.zip”文件,你会惊奇地发现,压缩包中显示的原文件体积达到了16777KB(见图6),也就是16MB!现在你明白我们第三步中所做修改的目的了吧,我们就是要把原文件从“蟋蟀”变成“大象”!而且,现在你把压缩包中的“数字图像噪声和去除.htm”文件解压出来,其文件体积仍然是16MB,而且可以正常打开浏览。
谜底揭晓了
第五步:接下来就很简单了,把这个修改后的ZIP格式变成RAR格式即可,如果用WinRAR“工具”菜单中的“转换档案文件格式”功能转换后的压缩比会稍微缩小,这里我们直接将“数字图像噪声和去除.zip”改名为“数字图像噪声和去除.rar”,就做成了最开始看到的那个超级压缩包。
3.文件压缩原理
文件压缩分为有损压缩和无损压缩两种,我们常用的WinRAR、WinZip都是属于无损压缩,其基本原理都是一样的,简单地说也就是把文件中的重复数据用更简洁的方法表示,例如一个文件中有1000个字母A,那么这将占用1KB的数据空间,如果用压缩算法就可以用1000A来表示,那么它只需要5个字节的数据空间,压缩比达到了200倍。
那么由此看来,1000倍甚至更高倍的压缩比是可以实现的,但要求源文件必须有足够多的重复数据。不过,我们平时使用的文件都不可能是这样的,所以通常文件压缩比都在10倍以下,如果某个软件声称对任何文件都能够产生这种超高压缩比的话,那它肯定就是具有欺骗性质的了。
小编有话说:很多网上下载的文件只有300MB或400MB,但是解压后,居然可以达到2GB甚至更多,也许你会奇怪,为什么你用WinRAR压缩同样的文件,就没有这样的压缩效果呢?其实这是因为这些文件是用多款不同的压缩软件进行压缩的,用压缩音频最好的压缩软件压缩音频文件,用压缩动画最好的压缩软件压缩动画文件。而且在压缩时所选的参数也是最佳的,这样也就保证了最后生成的压缩文件是最小的
写原创有奖励!2025面包板原创奖励正在进行中
最新发表
推荐阅读
明星博主
原创博文
年度排行
博文排行
博文评论
FPGA/CPLD
MCU/ 嵌入式
模拟
电源/新能源
测试测量
通信
智能手机
处理器与DSP
PCB
汽车电子
消费电子
智能硬件
物联网
软件与OS
采购与分销
供应链管理
工程师职场
EDA/ IP/ 设计与制造
无人机
机器人/ AI
医疗电子
工业电子
管理
写博文
点赞(
12
)
收藏
分享到:
上一篇:
不需软件 将回收站中误删文件恢复
下一篇:
51,AVR,PIC,DSP,DIY的网站收集【转】
PARTNER CONTENT
换一换>
更多>
SK海力士发布2024财年及第四季度财务报告
SK海力士
2025-01-23
全球知名科技公司正在出售一批未使用的IC载板先进封装工艺生产设备
ALLSURPLUS
2025-02-14
德中技术发布数控设备操作系统MOS V1.0版本软件
德中技术
2025-02-06
文章评论
(
6
条评论)
登录
后参与讨论
您需要登录后才可以评论
登录
|
立即注册
发布
用户398468
2009-8-29 20:22
亲自按这个方法,认真按步骤试了一下。将原文件大小改成了FFFFFF,那样子是把原文件的大小增大了,并不是减小了。那样解压缩是增大,对压缩本身没帮助。如果把文件大小改小,那样解压缩会出错,解压缩不了。 不知道是我操作错误还是怎样,楼主或许可以有空试试看,如果的确可以,想请教一下楼主到底是怎样实现的。
回复
用户461316
2009-6-10 21:45
只是分享一下!
回复
用户505793
2009-6-9 16:46
解压后那么大,进行填充了吗
回复
用户1601871
2009-4-19 04:53
感谢分享!受益了
回复
用户1418394
2008-11-6 22:54
没看明白!!!
回复
用户1052577
2008-10-29 15:40
毛主席说过:好好学习,天天向上! 这句话很经典,一点也不过时!!!!1
回复
用户175843
2008-10-26 01:53
学习了!
回复
用户1127088
2008-7-24 22:37
这些基本上是对SPEC总结和事例解释,大家喜欢就好
回复
用户474087
2008-7-24 12:23
从最基本的gpio学起
回复
用户158764
2008-7-24 11:39
大家一起学习啊 有没有QQ群可以加入,大家一起讨论
回复
查看更多评论
相关推荐阅读
用户461316
2009-08-17 17:57
Zigbee星型网络组网程序段
最近一直在做Zigbee的星型网络的组网试验,由于时间的原因,现在只是在最高的应用层上来编写程序。即协议栈的程序是2430的开发商(无限龙)编写的,我只是调用相应的函数来完成组网的,星型网络组网部分的...
用户461316
2009-08-17 17:14
VB6的标题栏使用上真彩色图标
模块 ModIcon.Bas 代码: Option Explicit Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long...
用户461316
2009-08-17 16:58
AppendToLog一个API方式存取日志文件的模块
'**************************************' 模块名称: AppendToLog' 功能描述:一个很不错的日志文件写入模块,不同于' open/print/...
用户461316
2009-08-17 16:57
(VB自定义函数)去除字符串中的空格
'去除字符串中的空格(方法一)Public Function DelBlank(SearchString As String) DelBlank = Replace(SearchString, C...
用户461316
2009-08-17 16:56
(VB自定义函数)对任意输入的汉字,可以得到它的拼音的第一个字母
调用方法:Command1.Caption = getHzPy("你")'//函数入口为汉字串,返回值为该汉字的第一个字母Public Function getHzPy(hzStr As String...
用户461316
2009-08-17 16:54
VB_代码执行速度测试
'**************************************'Windows API/Global Declarations for :[ ' A Simple] code ...
用户461316
修改
文章:
273
阅读:
1173599
评论:
1065
赞:
2068
好友
私信
个人主页
文章
273
原创
0
阅读
1173599
评论
1065
赞
2068
最新评论
更多
写的好,学习了,多层板,做的质量一流,很难
开发工匠 ...
评论博文
2025-2-21
PCB多层板为何偏爱偶数层:一场关于平衡的 ...
写的好,大师之作,学习榜样
开发工匠 ...
评论博文
2025-2-20
我与EET的缘分,以及2025年打算在这里分享 ...
7sms : 涨薪1%呢,也就是每个月多拿了有1000元呢———— 楼主10万一个月? 一般的,月薪10W只能在菊花厂能拿到 ...
liweicheng
评论博文
2025-2-19
【工程师故事】勇敢的人先享受世界 ...
最新
博文
Deepseek评OKR是职场人士最应学习的管 ...
从智能手机到服务器,贴片散热器如何 ...
高难度PCB一站式:技术与服务的双重保 ...
资料下载
本周热帖
FP7153PDF规格说明书
FT60F02X芯片手册
[40周全]物联网/嵌入式全能工程师(提 ...
电子工程师入门手册
软件工程知识体系(SWEBOK)v4.0 ...
【赚E币,兑大奖】用AI来分析电路或编 ...
无线充电发射板TYPEC接口快充输入,支 ...
富芮坤FR3068E开发板使用评测 ...
【富芮坤FR3068x-C】学习开发 ...
过压保护元件的典型应用市场 ...
最新资讯
芯语最新
资本市场的“疯狂星期四”,宇树科技 ...
利用解决方案供应商的优势加速自主移 ...
微软量子芯片掀桌子:“幽灵粒子”让 ...
铠侠携手闪迪开发出第10代3D NAND闪 ...
华为成立新公司“北京引望”,聚焦汽 ...
飞依诺研发出超分辨超声显微成像技术 ...
第三届微流控技术应用与创新高峰论坛 ...
睿创微纳:红外产品订单充足,2024年 ...
柯力传感成功并购禹山传感,拓展水质 ...
四方光电:暖通空调气体传感器业务平 ...
EE直播间
更多
高效协同与版本管理:是德科技设计数据管理软件助力现代芯片设计
直播时间: 02月26日 10:00
第三代功率半导体器件测试解决方案
直播时间: 03月06日 10:00
利用高性能源表和强大的软件, 实现半导体参数的测试和分析
直播时间: 04月17日 10:00
在线研讨会
更多
使用新型光耦隔离栅极驱动器优化系统效率及EMI表现
Allegro电流传感器替代采样电阻解决方案—实现更高效、更可靠的电流检测
迈来芯电流传感器:从汽车到工业与消费电子全面应用
如何在隔离的状态监控系统中捕获同步数据
热门
推荐
详解状态监控系统的数据采集技术
【直播】可替代采样电阻的电流传感器技术
百万设备≠唯一解!精密测量成本砍半秘籍
芯片现货市场行情分析
我要评论
6
12
分享到微信
分享到微博
分享到QQ
点击右上角,分享到朋友圈
我知道啦
请使用浏览器分享功能
我知道啦
关闭
站长推荐
/1
面包板社区有奖活动汇总楼
1. 拆解活动即将上线!2. 写原创,有奖励!3. 免费申领:开发板试用、书籍试读...
首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2024国际航空电子大会
2024国际 AIoT 生态发展大会
3D IC 设计和Chiplet资料下载
车载总线测试和解码方案
新能源汽车三电测试技术中心
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
帖子
博文
返回顶部
×
用户398468 2009-8-29 20:22
用户461316 2009-6-10 21:45
用户505793 2009-6-9 16:46
用户1601871 2009-4-19 04:53
用户1418394 2008-11-6 22:54
用户1052577 2008-10-29 15:40
用户175843 2008-10-26 01:53
用户1127088 2008-7-24 22:37
用户474087 2008-7-24 12:23
用户158764 2008-7-24 11:39