Txt文本編碼格式說明


什么頭都沒有直接數據的就是ANSI類型,EF BB BF頭的就是UTF-8類型,FF FE頭的就是UNICODE類型的,FE FF頭的就是UNICODE BIG ENDIAN類型的,然后根據類型確定用什么類型的變量保存內容

其他
各類文件的文件頭標志
 
1、從Ultra-edit-32中提取出來的
 
JPEG (jpg),文件頭:FFD8FF
 
PNG (png),文件頭:89504E47
 
GIF (gif),文件頭:47494638
 
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
 
Postscript (eps.or.ps),文件頭:252150532D41646F6265
 
Adobe Acrobat (pdf),文件頭:255044462D312E
 
Quicken (qdf),文件頭:AC9EBD8F
 
Windows Password (pwl),文件頭:E3828596
 
ZIP Archive (zip),文件頭:504B0304
 
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
 
2、從winhex中取出的文件頭列表
 
File Type ExtensionsHeader
 
JPEG jpg;jpeg 0xFFD8FF
 
PNG png 0x89504E470D0A1A0A
 
GIF gif GIF8
 
TIFF tif;tiff 0x49492A00
 
TIFF tif;tiff 0x4D4D002A
 
Bit map bmp BM
 
AOL ART art 0x4A47040E000000
 
AOL ART art 0x4A47030E000000
 
PC Paintbrush pcx 0x0A050108
 
Graphics Metafile wmf 0xD7CDC69A
 
Graphics Metafile wmf 0x01000900
 
Graphics Metafile wmf 0x02000900
 
Enhanced Metafile emf 0x0100000058000000
 
Corel Draw cdr CDR
 
CAD dwg 0x41433130
 
Adobe Photoshop psd 8BPS
 
Rich Text Format rtf rtf
 
XML xml
 
HTML html;htm;php;php3;php4;phtml;shtml type
 
Email eml Delivery-date:
 
Outlook Express dbx 0xCFAD12FE
 
Outlookpst!BDN
 
MS Office/OLE2doc;xls;dot;ppt;xla;ppa;pps;pot;msi;sdw;db 0xD0CF11E0A1B11AE1
 
MS Access mdb;mda;mde;mdt Standard J
 
WordPerfect wpd 0xFF575043
 
OpenOffice Writer sxw writer
 
OpenOffice Calc sxc calc
 
OpenOffice Math sxm math
 
OpenOffice Impress sxi impress
 
OpenOffice Draw sxd draw
 
Adobe FrameMaker fm <MAKERFILE
 
PostScript eps.or.ps;ps;eps %!PS-Adobe
 
Adobe Acrobat pdf %PDF-1.
 
Quicken qdf 0xAC9EBD8F
 
QuickBooks Backup qbb 0x458600000600
 
Sage sly.or.srt.or.slt;sly;srt;slt0x53520100
 
Sage Backup 1 SAGEBACKUP
 
Lotus WordPro v9 lwp 0x576F726450726F
 
Lotus 123 v9 123 0x00001A00051004
 
Lotus 123 v5 wk4 0x00001A0002100400
 
Lotus 123 v3 wk3 0x00001A0000100400
 
Lotus 123 v1 wk1 0x2000604060
 
Windows Password pwl 0xE3828596
 
ZIP Archive zip;jar 0x504B0304
 
ZIP Archive (outdated) zip 0x504B3030
 
RAR Archive rar Rar!
 
GZ Archive gz;tgz 0x1F8B08
 
BZIP Archive bz2 BZh
 
ARJ Archive arj 0x60EA
 
7-ZIP Archive 7z 7z集'
 
Wave wav WAVE
 
AVI avi AVI
 
Real Audio ram;ra .ra?0
 
Real Media rm .RMF
 
MPEG mpg;mpeg 0x000001BA
 
MPEG mpg;mpeg 0x000001B3
 
Quicktime mov moov
 
Windows Media asf 0x3026B2758E66CF11
 
MIDI mid MThd
 
Win32 Executable exe;dll;drv;vxd;sys;ocx;vbxMZ
 
Win16 Executable exe;dll;drv;vxd;sys;ocx;vbxMZ
 
ELF Executable elf;; 0x7F454C4601010100
 
各種文件類型文件頭標志位詳細列表
 
FFD8FFFE00, .JPEG;.JPE;.JPG, "JPGGraphic File"
 
FFD8FFE000, .JPEG;.JPE;.JPG, "JPGGraphic File"
 
474946383961, .gif, "GIF 89A"
 
474946383761, .gif, "GIF 87A"
 
424D, .bmp, "Windows Bitmap"
 
4D5A,.exe;.com;.386;.ax;.acm;.sys;.dll;.drv;.flt;.fon;.ocx;.scr;.lrc;.vxd;
 
.cpl;.x32, "Executable File"
 
504B0304, .zip, "Zip Compressed"
 
3A42617365, .cnt, ""
 
D0CF11E0A1B11AE1,.doc;.xls;.xlt;.ppt;.apr, "MS Compound Document v1 or Lotus Approach APRfile"
 
0100000058000000, .emf, ""
 
03000000C466C456, .evt, ""
 
3F5F0300, .gid;.hlp;.lhp, "Windows HelpFile"
 
1F8B08, .gz, "GZ Compressed File"
 
28546869732066696C65, .hqx, ""
 
0000010000, .ico, "Icon File"
 
4C000000011402, .lnk, "Windows LinkFile"
 
25504446, .pdf, "Adobe PDF File"
 
5245474544495434, .reg, ""
 
7B5C727466,.rtf, "Rich Text Format File"
 
lh, .lzh, "Lz compression file"
 
MThd, .mid, ""
 
0A050108, .pcx, ""
 
25215053, .eps, "Adobe EPS File"
 
2112, .ain, "AIN Archive File"
 
1A02, .arc, "ARC/PKPAK Compressed 1"
 
1A03, .arc, "ARC/PKPAK Compressed 2"
 
1A04, .arc, "ARC/PKPAK Compressed 3"
 
1A08, .arc, "ARC/PKPAK Compressed 4"
 
1A09, .arc, "ARC/PKPAK Compressed 5"
 
60EA, .arj, "ARJ Compressed"
 
41564920, .avi, "Audio Video Interleave(AVI)"
 
425A68, .bz;.bz2, "Bzip Archive"
 
49536328, .cab, "Cabinet File"
 
4C01, .obj, "Compiled Object Module"
 
303730373037, .tar;.cpio, "CPIO ArchiveFile"
 
4352555348, .cru;.crush, "CRUSH ArchiveFile"
 
3ADE68B1, .dcx, "DCX Graphic File"
 
1F8B, .gz;.tar;.tgz, "Gzip ArchiveFile"
 
91334846, .hap, "HAP Archive File"
 
3C68746D6C3E,.htm;.html, "HyperText Markup Language 1"
 
3C48544D4C3E,.htm;.html, "HyperText Markup Language 2"
 
3C21444F4354, .htm;.html, "HyperText MarkupLanguage 3"
 
100, .ico, "ICON File"
 
5F27A889, .jar, "JAR Archive File"
 
2D6C68352D,.lha, "LHA Compressed"
 
20006040600, .wk1;.wks, "Lotus 123 v1 Worksheet"
 
00001A0007800100, .fm3, "Lotus 123 v3 FMTfile"
 
00001A0000100400, .wk3, "Lotus 123 v3Worksheet"
 
20006800200, .fmt, "Lotus 123 v4 FMTfile"
 
00001A0002100400, .wk4, "Lotus 123 v5"
 
5B7665725D, .ami, "Lotus Ami Pro"
 
300000041505052, .adx, "Lotus ApproachADX file"
 
1A0000030000, .nsf;.ntf, "Lotus NotesDatabase/Template"
 
4D47582069747064, .ds4, "MicrografixDesigner 4"
 
4D534346, .cab, "Microsoft CAB FileFormat"
 
4D546864, .mid, "Midi Audio File"
 
000001B3, .mpg;.mpeg, "MPEG Movie"
 
0902060000001000B9045C00, .xls, "MS Excel v2"
 
0904060000001000F6055C00, .xls, "MS Excel v4"
 
7FFE340A,.doc, "MS Word"
 
1234567890FF, .doc, "MS Word 6.0"
 
31BE000000AB0000, .doc, "MS Word forDOS 6.0"
 
1A00000300001100, .nsf, "NotesDatabase"
 
7E424B00, .psp, "PaintShop Pro Image File"
 
504B0304, .zip, "PKZIP Compressed"
 
89504E470D0A, .png, "PNG Image File"
 
6D646174, .mov, "QuickTime Movie"
 
6D646174, .qt, "Quicktime MovieFile"
 
52617221, .rar, "RAR Archive File"
 
2E7261FD, .ra;.ram, "Real AudioFile"
 
EDABEEDB, .rpm, "RPM Archive File"
 
2E736E64, .au, "SoundMachine AudioFile"
 
53495421, .sit, "Stuffit v1 ArchiveFile"
 
53747566664974, .sit, "Stuffit v5Archive File"
 
1F9D, .z, "TAR Compressed ArchiveFile"
 
49492A, .tif;.tiff, "TIFF (Intel)"
 
4D4D2A,.tif;.tiff, "TIFF (Motorola)"
 
554641, .ufa, "UFA Archive File"
 
57415645666D74, .wav, "Wave Files"
 
D7CDC69A,.wmf, "Windows Meta File"
 
4C000000, .lnk, "Windows Shortcut (LinkFile)"
 
504B3030504B0304, .zip, "WINZIPCompressed"
 
FF575047, .wpg, "WordPerfectGraphics"
 
FF575043, .wp, "WordPerfect v5 orv6"
 
3C3F786D6C,.xml, "XML Document"
 
FFFE3C0052004F004F0054005300540055004200, .xml, "XML Document(ROOTSTUB)"
 
3C21454E54495459, .dtd, "XML DTD"
 
5A4F4F20, .zoo, "ZOO Archive File"
 
 
 
 
通過文件頭標識判斷圖片格式
 
       最近在做東西的時候遇到了點問題,在加載圖片的時候,加載失敗,后綴都是jpg格式,但換個圖片就可以了,為此,懷疑圖片格式有問題,遂拖到UE里面查看它的16進制,果然,兩個圖片的文件頭根本就不一樣,這不是欺負人嘛,害我白白浪費了半天的時間,差點要重新編譯內核。
 
然后到網上找了一些資料,查看不同格式圖片的文件頭是怎樣的。下面轉帖是不同圖片的文件頭標志:
 
圖片的格式很多,一個圖片文件的后綴名並不能說明這個圖片的真正格式什么,那么如何獲取圖片的格式呢?我想到了幾個簡單但有效的方法,那就是讀取圖片文件的文件頭標識。我們知道各種格式的圖片的文件頭標識識不同的,因此我們可以通過判斷文件頭的標識來識別圖片格式。
 
     我對各種格式的圖片文件頭標識進行了分析,不僅查找資料,也用十六進制編輯器察看過圖片的文件頭,以下是我收集、分析的結果,供大家參考。
 
1.JPEG/JPG
 
- 文件頭標識 (2bytes): $ff, $d8 (SOI) (JPEG 文件標識)
 
- 文件結束標識 (2bytes): $ff, $d9 (EOI)
 
2.TGA
 
- 未壓縮的前5字節   0000 02 00 00
 
- RLE壓縮的前5字節   00 00 10 00 00
 
3.PNG
 
- 文件頭標識 (8 bytes)  89 50 4E 47 0D 0A 1A 0A
 
4.GIF
 
- 文件頭標識 (6bytes)   47 49 46 38 39(37) 61
 
                        G  I F  8  9 (7) a
 
5.BMP
 
- 文件頭標識 (2bytes)   42 4D
 
                        B   M
 
6.PCX
 
- 文件頭標識 (1bytes)   0A
 
7.TIFF
 
- 文件頭標識 (2bytes)   4D 4D 或 49 49
 
8.ICO
 
- 文件頭標識 (8bytes)   00 00 01 00 01 00 20 20
 
9.CUR
 
- 文件頭標識 (8bytes)   00 00 02 00 01 00 20 20
 
10.IFF
 
- 文件頭標識 (4bytes)   46 4F 52 4D
 
                        F  O R  M
 
11.ANI
 
- 文件頭標識 (4bytes)   52 49 46 46
 
12、Word/Excel(xls.or.doc)
 
文件頭標識                 D0CF11E0                                      D0CF11E0A1B11AE1
 
 
 
文件結束標識             0100FEFF030A0000  
 
                        R  I F  F
 
     根據這些文件頭標識的收集,我可以寫一個識別圖像格式的模塊了。但是在寫這個模塊之前可以對收集到的文件頭標識進行優化,使得程序中字符串比對次數盡量的少。
 
1.JPEG我們知需要比對文件頭的$ff, $d8這兩個字符,而不用讀取最后的兩個結束標識了。
 
2.TGA,ICO,CUR只需比對第三個與第五個字符即可。
 
3.PNG比對[89][50]這兩個字符。
 
4.GIF比對[47][49][46]與第五個字符。
 
廢話不多說了,利用內存流來判斷文件的格式,其實判斷文件的前幾個字節就可以簡單的判斷這個文件是什么類型的文件,例如
 
jpg文件 是 FFD8 (從低位到高位就要反過來 D8FF 下面都是一樣)
 
BMP文件 是 424D ---4D42
 
其他的我就不一一列舉了,想知道跟多文件類型分別是用什么字符作為文件的開頭的話,下載個C32asm或者UE等這類16進制編輯器就可以看到了
 
什么頭都沒有直接數據的就是ANSI類型,EF BB BF頭的就是UTF-8類型,FF FE頭的就是UNICODE類型的,FE FF頭的就是UNICODE BIG ENDIAN類型的,然后根據類型確定用什么類型的變量保存內容
 
求助怎么能在winhex中添加新的文件頭搜索項
 
 
 
 
選擇按類型恢復,彈出對話框后點擊signatures按鈕,這時,winhex就會調用excel打開這個winhex安裝目錄下的File Type Signatures Search這個文件。然后在Description下輸入描述比如“圖片”,Extensions下輸入擴展名,多個擴展名可以以分號隔開。heard下輸入文件頭的標志,以右斜杠隔開,並一小寫x開頭(表示十六進制)。逐個輸入標志字節,比如圖片則輸入:\xFF\xD8\。假設圖片的標志字節在第四個字節,那么在offset下輸入4。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM