首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与MCU
工程师职场
最新帖子
问答
版主申请
每月抽奖
商城免费换礼
社区有奖活动
博客
下载
评测
视频
文库
芯语
资源
2024国际航空电子大会
2024国际 AIoT 生态发展大会
3D IC 设计和Chiplet资料下载
车载总线测试和解码方案
新能源汽车三电测试技术中心
在线研讨会
EE直播间
小测验
白皮书
行业及技术活动
杂志免费订阅
免费在线工具
厂商资源中心
论坛
博文
电子工程专辑
电子技术设计
国际电子商情
资料
白皮书
研讨会
芯语
文库
登录|注册
登录
用户461316
修改
文章:
273
阅读:
1183239
评论:
1065
赞:
2357
好友
私信
个人主页
文章
273
原创
0
阅读
1183239
评论
1065
赞
2357
原创
把1G的文件变成1M的方法
2008-10-25 03:37
3395
13
19
分类:
工程师职场
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
医疗电子
工业电子
管理
写博文
点赞(
13
)
收藏
分享到:
上一篇:
不需软件 将回收站中误删文件恢复
下一篇:
51,AVR,PIC,DSP,DIY的网站收集【转】
PARTNER CONTENT
换一换>
更多>
案例分享 | 高效节能,性能卓越!汉高三防漆为电动汽车充电系统披上"隐形铠甲"
汉高
2025-03-21
赤池昌二先生升任TEL集团副总裁兼中国区总裁
Tokyo Electron
2025-03-04
文章评论
(
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
阅读:
1183239
评论:
1065
赞:
2357
好友
私信
个人主页
文章
273
原创
0
阅读
1183239
评论
1065
赞
2357
最新评论
更多
学习了
curton
评论博文
2025-4-2
从新人到骨干:三大思维转变助你职场腾飞 ...
写的好,学习和参考,分析很细,大师之作,比亚迪还是很牛
开发工匠 ...
评论博文
2025-4-1
特斯拉入华十年:褪去光环,开始 “交学费 ...
写的好,学习和参考,很实用,写的详细
开发工匠 ...
评论博文
2025-3-31
朋友想用RK3506核心板自研一款嵌入式工业网 ...
最新
博文
Credo发布Lark系列——为低功耗800G光 ...
芯原推出新一代集成AI的ISP9000图像信 ...
智能语音芯片WT588F02B-8S:低功耗设 ...
资料下载
本周热帖
苏州永创智能科技详解“CMTI测试电源 ...
ASL6328 HDMI2.0 Retimer中继器ic设计 ...
IGBT并联使用要点(来源于onsemi) ...
英飞凌双通道音频功率驱动芯片 ...
stm32单片机手册
聚焦 3 月:世界通信大会、嵌入式展及 ...
“卷”的大环境下还是有公司强力增长 ...
如何用Switch连接投影仪
肖特基二极管vs.超快恢复二极管:哪种 ...
AEC-Q104认证:芯片模组的可靠性与质 ...
最新资讯
芯语最新
苹果公司被罚约12亿元人民币 ...
紫光展锐股改收官,剑指IPO开启新征程 ...
Arm退场高通入局,Serdes技术争夺升温 ...
传立讯精密计划赴港上市,拟融资近30 ...
从整车到芯片全链条打击,美国25%关税 ...
A.O.史密斯首创"总裁直达通道"树立行 ...
面板大厂又出售厂房
康宁大猩猩玻璃再升级
友达与元太成立合资公司,打造大型电 ...
又一显示大厂人事地震:调整4位高管! ...
EE直播间
更多
精准捕获瞬态信号,掌控复杂射频环境 – 实时频谱分析与录制回放
直播时间: 04月10日 10:00
利用高性能源表和强大的软件, 实现半导体参数的测试和分析
直播时间: 04月17日 10:00
在线研讨会
更多
MAXQ™ Power转换器架构:性能零浪费
多物理场仿真在半导体制程中的应用
迈来芯新一代经济型热成像技术:赋能电力电子过热保护与智能应用温度监控
ADI 应用于电池管理系统 (BMS) 的电芯监测解决方案
热门
推荐
迈来芯新一代经济型热成像技术
百万设备≠唯一解!精密测量成本砍半秘籍
破解工业通信时延困局
TOLG 技术采用超紧凑的海鸥翼式引脚设计
我要评论
6
13
分享到微信
分享到微博
分享到QQ
点击右上角,分享到朋友圈
我知道啦
请使用浏览器分享功能
我知道啦
关闭
站长推荐
/3
【直播】ADI 全新架构解析汽车电源设计
汽车电源设计人员正面临下一代系统的开发挑战,参与直播了解MAXQ Power架构如何帮助设计下一代软件定义的ADAS、信息娱乐和车身电子系统,如何解决关键系统设计问题和实际案例分析。
2025第1期拆解活动:赢示波器、运动相机、热像仪等!
示波器、影石运动全景相机、大疆无人机、高清红外热成像仪;树莓派5等等
【在线研讨会】多物理场仿真在半导体工艺中的应用
聚焦 COMSOL 仿真软件在半导体制程中的广泛应用,内容涵盖晶圆制备、光刻、沉积、刻蚀、离子注入、热处理,以及平坦化等前道工艺过程中各种多物理场现象的模拟和分析。
首页
论坛
电子技术基础
模拟技术
可编程器件
嵌入式系统与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