常见文件头 类型

比如,一个文件没有后缀名,无法判断是什么类型。

或者在数据恢复的时候,提取相应的段,就可以还原文件。

这时候,WinHex打开,前几个字符对应类型即可。

gzip                                                文件头:1F8B08    http网页gzip压缩

JPEG (jpg),                             文件头:FFD8FF              
PNG (png),                              文件头:89504E47  文件尾:0000000049454E44AE426082
GIF (gif),                                      文件头:47494638
ZIP Archive (zip),                        文件头:504B0304 文件尾:00000000
RAR Archive (rar),                      文件头:52617221

TIFF (tif),                                       文件头:49492A00
Windows Bitmap (bmp),          文件头:424D
CAD (dwg),                               文件头:41433130
Adobe Photoshop (psd),            文件头:38425053
Rich Text Format (rtf),                   文件头:7B5C727466
XML (xml),                                     文件头:3C3F786D6C
HTML (html),                                  文件头:68746D6C3E
Email [thorough only] (eml),         文件头:44656C69766572792D646174653A
Outlook Express (dbx),                文件头:CFAD12FEC5FD746F
Outlook (pst),                                 文件头:2142444E
MS Word/Excel (xls.or.doc),        文件头:D0CF11E0
MS Access (mdb),                        文件头:5374616E64617264204A
WordPerfect (wpd),                      文件头:FF575043
Adobe Acrobat (pdf),                    文件头:255044462D312E
Quicken (qdf),                                文件头:AC9EBD8F
Windows Password (pwl),            文件头:E3828596
Wave (wav),                                    文件头:57415645
AVI (avi),                                          文件头:41564920
Real Audio (ram),                           文件头:2E7261FD
Real Media (rm),                             文件头:2E524D46
MPEG (mpg),                                  文件头:000001BA
MPEG (mpg),                                  文件头:000001B3
Quicktime (mov),                             文件头:6D6F6F76
Windows Media (asf),                     文件头:3026B2758E66CF11
MIDI (mid),                                         文件头:4D546864


增加-----------------

JPEG (jpg),文件头:FF D8 FF
PNG (png),文件头:89 50 4E 47     【参考:png文件头详解】89 50 4e 47 0d 0a 1a 0a
GIF (gif),文件头:47 49 46 38
Windows Bitmap (bmp),文件头:42 4D [参考:bmp文件格式详解]42 4D 36 0C 30 00 00 00 00 00 36 00 00 00 28 00 00 00 56 05 00 00 00 03 00 00 01 00 18 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
python反编译文件pyc的头:03 F3 0D 0A  (实验吧,py的交易会用到)
pyd的文件头:4D 5A 90 00
ZIP Archive (zip),文件头:50 4B 03 04 ascii码部分是PK,可以直接根据PK判断是zip文件,也有可能是doc文件
rar文件: 52 61 72 21
7z文件头:37 7A BC AF 27 1C(实验吧,有趣的文件用到了)
MS Word/Excel (xls.or.doc),文件头:D0CF11E0
CAD (dwg),文件头:41433130
Adobe Photoshop (psd),文件头:38425053
Rich Text Format (rtf),文件头:7B5C727466
XML (xml),文件头:3C3F786D6C
HTML (html),文件头:68746D6C3E
Email [thorough only] (eml),文件头:44656C69766572792D646174653A
Outlook Express (dbx),文件头:CFAD12FEC5FD746F
Outlook (pst),文件头:2142444E
MS Access (mdb),文件头:5374616E64617264204A
WordPerfect (wpd),文件头:FF575043
Postscript (eps.or.ps),文件头:252150532D41646F6265
Adobe Acrobat (pdf),文件头:255044462D312E
Quicken (qdf),文件头:AC9EBD8F
Windows Password (pwl),文件头:E3828596
RAR Archive (rar),文件头:52617221
Wave (wav),文件头:57415645
AVI (avi),文件头:41564920
Real Audio (ram),文件头:2E7261FD
Real Media (rm),文件头:2E524D46
MPEG (mpg),文件头:000001BA
MPEG (mpg),文件头:000001B3
Quicktime (mov),文件头:6D6F6F76
Windows Media (asf),文件头:3026B2758E66CF11
MIDI (mid),文件头:4D546864 

  • 9
    点赞
  • 67
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
一、 GIF图片基本结构和原理 1、GIF简介   GIF(Graphics Interchange Format)是CompuServe公司开发的图像文件存储格式,1987年开发的GIF文件格式版本号是GIF87a,1989年进行了扩充,扩充后的版本号定义为GIF89a。 GIF图像文件以数据块(block)为单位来存储图像的相关信息。一个GIF文件由表示图形/图像的数据块、数据子块以及显示图形/图像的控制信息块组成,称为GIF数据流(Data Stream)。数据流中的所有控制信息块和数据块都必须在文件(Header)和文件结束块(Trailer)之间。   GIF文件格式采用了LZW(Lempel-Ziv Walch)压缩算法来存储图像数据,定义了允许用户为图像设置背景的透明(transparency)属性。此外,GIF文件格式可在一个文件中存放多幅彩色图形/图像。如果在GIF文件中存放有多幅图,它们可以像演幻灯片那样显示或者像动画那样演示。 2、GIF文件结构 GIF文件结构的典型结构如图1-01所示。为下文说明方便,在图片右边加了编号。 图1-01 数据块可分成3类: 控制块(Control Block),图形描绘块(Graphic-Rendering Block)和专用块(Special Purpose Block)。 (1) 控制块: 控制块包含有用来控制数据流(Data Stream)或者设置硬件参数的信息,其成员包括:GIF文件(Header)逻辑屏幕描述块(Logical Screen Descriptor)图形控制扩展块(Graphic Control Extension)文件结束块(Trailer) (2) 图形描绘块: 包含有用来描绘在显示设备上显示图形的信息和数据,其成员包括:图像描述块(Image Descriptor)无格式文本扩展块(Plain Text Extension)全局调色板、局部调色板、图像压缩数据和图像说明扩充块。 (3) 特殊用途数据块: 包含有与图像处理无关的信息,其成员包括:注释扩展块(Comment Extension)应用扩展块(Application Extension)除了在控制块中的逻辑屏幕描述块(Logical Screen Descriptor)和全局彩色表(Global Color Table)的作用范围是整个数据流(Data Stream)之外, 所有其他控制块仅跟在它们后面的图形描绘块。 3、GIF结构详解 由于GIF结构比较复杂,我们就简单讲解一下GIF的文件吧,因为我们要用到,更多的资料请参看百度文库:http://wenku.baidu.com/view/2c0feaa6f524ccbff121841d.html 。 (1)文件描述块(Header)定义GIF数据流(GIF Data Stream),它的结构如图1-02所示。文件描述块(Header)由GIF标记域(Signature)和版本号(Version)域组成,是一个由6个固定字节组成的数据块,它们用来说明使用的文件格式是GIF格式及当前所用的版本号。GIF标记域(Signature)存放的是“GIF”,版本号域存放的是1987年5月发布的“87a”或者1989年7月发布的“89a”,或者更加新的版本号。 1-02 这里我们识别一个图片是不是GIF文件,就是判断文件的前三个字节是不是GIF,就算是图片呗重命名为jpg或者其他的,只要用浏览器打开,都是可以正常显示的,这也就是为什么有些jpg图片也会动的原因。同理PNG图片的前三个图片是PNG. (2)逻辑屏幕描述块(Logical Screen Descriptor)包含定义图像显示区域的参数,包括背景颜色信息。这个数据块中的坐标相对于虚拟屏幕的左上角,不一定是指显示屏的绝对坐标,这就意味可以参照窗口软件环境下的窗口坐标或者打印机坐标来设计图像显示程序。逻辑屏幕描述块的结构如图1-03所示 1-03 这里我们看到GIF的字段,可以读取GIF图片的实际高度和宽度,到这里就差不多了,其他的大家看百度文库的文档吧,我就不再说了。 二、 GIF分解工具简介   上面给大家讲了那么多的GIF文件的东西,可能大家看的有点不耐烦,目的主要是为了让大家了解GIF的结构,这样才能更好的读懂项目里面的代码。下面来看一段读取GIF文件信息的代码,体会一下: 临时字节集 = gif图片标识 =到文本 ( 取字节集左边 ( 临时字节集, 3) )' 前3个字节,标识"GIF" 版本号 =到文本 ( 取字节集中间 ( 临时字节集, 4, 3) )' 3~6三个字节为版本号( 通常为89a,表示1989年的版本,还有一个版本为87a,为1987年的,具体百度)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iachel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值