1. 记录说明
在进行文件真实类型识别的时候,需要根据文件的头部格式信息,来判断文件类型,下面就整理一些常见的。方便日后使用查找方便。
2. 常见格式
//可执行程序
static const unsigned char Exe_Head[] = {0X4D, 0X5A};
//static const unsigned char Dll_Head[] = {0X4D, 0X5A, 0X90};
static const unsigned char Linux32_exe_Head[] = {0X7F, 0X45, 0X4C, 0X46, 0X01, 0X01, 0X01};
static const unsigned char Linux64_exe_Head[] = {0X7F, 0X45, 0X4C, 0X46, 0X02, 0X01, 0X01};
//图片
static const unsigned char Jpg_Head[] = {0XFF, 0XD8, 0XFF};
static const unsigned char Png_Head[] = {0X89, 0X50, 0X4E};
static const unsigned char Gif_Head[] = {0X47, 0X49, 0X46, 0X38};
static const unsigned char Bmp_Head[] = {0X42, 0X4D};
static const unsigned char Psd_Head[] = {0X38, 0X42, 0X50, 0X53};
//压缩包
static const unsigned char Zip_Head[] = {0X50, 0X4B, 0X03, 0X04, 0X14, 0X00, 0X00};
static const unsigned char Rar_Head[] = {0X52, 0X61, 0X72};
static const unsigned char Targz_Head[] = {0X1F, 0X8B};
//static const unsigned char Jar_Head[] = {0X5F, 0X27, 0XA8, 0X89};
static const unsigned char _7z_Head[] = {0X37, 0X7A, 0XBC, 0XAF, 0X27, 0X1C};
static const unsigned char Bz_Head[] = {0X42, 0X5A, 0X68};
//office类
//doc, xls, ppt等
static const unsigned char Office_Head[] = {0XD0, 0XCF, 0X11, 0XE0, 0XA1, 0XB1, 0X1A, 0XE1};
//docx,pptx,xlsx等
static const unsigned char Office_x_Head[] = {0X50, 0X4B, 0X03, 0X04, 0X14, 0X00, 0X06, 0X00};
static const unsigned char Pdf_Head[] = {0X25, 0X50, 0X44, 0X46, 0X2D, 0X31, 0X2E};
//音频文件
static const unsigned char Wav_Head1[] = {0X52, 0X49, 0X46, 0X46};
static const unsigned char Wav_Head2[] = {0X57, 0X41, 0X56, 0X45};
static const unsigned char Ram_Head[] = {0X2E, 0X72, 0X61, 0XFD};
static const unsigned char MP3_Head[] = {0X49, 0X44, 0X33};
static const unsigned char Asf_Head[] = {0X30, 0X26, 0XB2, 0X75, 0X8E, 0X66, 0XCF, 0X11};
//视频文件
static const unsigned char Rm_Head[] = {0X2E, 0X52, 0X4D};
static const unsigned char Avi_Head1[] = {0X52, 0X49, 0X46, 0X46};
static const unsigned char Avi_Head2[] = {0X41, 0X56, 0X49, 0X20};
static const unsigned char Mpeg_Head1[] = {0X00, 0X00, 0X01, 0XBA};
static const unsigned char Mpeg_Head2[] = {0X00, 0X00, 0X01, 0XB3};
static const unsigned char Mpeg_Head3[] = {0x47};
3. 更多文件格式
更多文件类型格式地址:File Signatures (garykessler.net)