文档章节

文件头魔数

G
 Galanodel
发布于 2017/05/05 09:25
字数 249
阅读 104
收藏 0

有一些类型的文件,起始的几个字节内容都是固定的,跟据这几个字节的内容就可以判断文件的类型,这几个字节也被称为“魔数”(magic number),比如class文件的魔数就是“CAFEBABE”。

这里列出了一些常用的文件类型的魔数:

文件类型文件后缀魔数
JPEGjpg;jpeg0xFFD8FF
PNGpng0x89504E470D0A1A0A
GIFgifGIF8
TIFFtif;tiff0x49492A00
TIFFtif;tiff0x4D4D002A
AOL ARTart0x4A47040E000000
AOL ARTart0x4A47030E000000
PC Paintbrushpcx0x0A050108
Graphics Metafilewmf0xD7CDC69A
Graphics Metafilewmf0x01000900
Graphics Metafilewmf0x02000900
Enhanced Metafileemf0x0100000058000000
CADdwg0x41433130
Outlook Expressdbx0xCFAD12FE
MS Office/OLE2doc;xls;dot;ppt;xla;ppa;pps;pot;msi;sdw;db0xD0CF11E0A1B11AE1
WordPerfectwpd0xFF575043
Quickenqdf0xAC9EBD8F
QuickBooks Backupqbb0x458600000600
Sagesly.or.srt.or.slt;sly;srt;slt0x53520100
Lotus WordPro v9lwp0x576F726450726F
Lotus 123 v91230x00001A00051004
Lotus 123 v5wk40x00001A0002100400
Lotus 123 v3wk30x00001A0000100400
Lotus 123 v1wk10x2000604060
Windows Passwordpwl0xE3828596
ZIP Archivezip;jar0x504B0304
ZIP Archive (outdated)zip0x504B3030
GZ Archivegz;tgz0x1F8B08
ARJ Archivearj0x60EA
MPEGmpg;mpeg0x000001BA
MPEGmpg;mpeg0x000001B3
Windows Mediaasf0x3026B2758E66CF11
ELF Executableelf;;0x7F454C4601010100
Java-Classclass0xCAFEBASE

© 著作权归作者所有

共有 人打赏支持
G
粉丝 2
博文 72
码字总数 49356
作品 0
海淀
高级程序员
私信 提问
JVM笔记 6.3 class类文件的结构

1. 魔数和Class文件的版本 每个Class文件的头4个字节被称为魔数, 值为 0xCAFEBABE ,接着5和6个字节是次版本号,7和8是主版本号,高版本的JDK向下兼容,JDK1.1支持 45.0 ~ 46.65535 以此类推...

蠢廿
2017/11/30
0
0
[Class文件结构] 1 - 概述

前言 众所周知,计算机只识别0和1,程序员写的c或c++程序最终都要经过编译、链接等步骤,将代码转换成0或1的二进制格式才能被计算机执行。由于依赖平台,导致c语音中基础数据类型在各平台上所...

某昆
2017/12/31
0
1
创建异型linux程序结构的可行性

linux可执行程序有固定的文件格式,将文件格式特征做修改,例如修改文件头魔数,或修改数据结构大小,增加特殊字段等;然后修改内核以支持这种新的格式,再修改编译器源代码,使之目标文件支...

tongzx2019
02/05
0
0
RPM-Red hat Package Manager文件格式解析(翻译)

RPM文件格式 一个RPM文件的组成 Lead分区 signature xx|header xx|archive xx] header 16|index 16|store N] = 32 + N Bytes define SIGTAG_SIZE 1000 define SIGTAG_MD5 1001 define SIGTAG......

Michael_Yuan
2013/05/29
0
0
Android apk仿反编译套路(一)

反编译Apk时你是否遇到过下图中的错误,反编译进行到就报错了,然后就没有然后了。 pic001.png 这是因为该apk的文件被特殊处理过,导致在反编译时报错。 我们知道是以AXML格式存在于apk中的,...

hellsam
2018/03/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
2
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
1
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0
android自定义viewgroup画背景

设计部要求背景实现一个背景边框带圆弧的效果: 所以想着用自定义控件画一个背景。 为了方便,继承的是LinearLayout,在onMeasure中先获取控件宽高: @Overrideprotected void onMeasure(in...

醉雨
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部