如果哪一天你的程序收到一段不明編碼的字符串,或者別人給了一個(gè)你看不懂的文本文件,你應(yīng)該如何去識(shí)別字符串的編碼呢?
一種是程序中用的方法,可以使用ICU之類的庫(kù)來幫你識(shí)別,如果你的字符串越長(zhǎng),它所能猜到的概率就越大。
另外一種方法是使用IE來幫助你查看。使用IE打開不明編碼的文件,然后選擇Encoding,不停的切換編碼,基本上看起來像文字的時(shí)候,就是那個(gè)編碼了:).這個(gè)方法很簡(jiǎn)單,比較實(shí)用。
另外對(duì)于unicode的編碼,觀察其BOM,也有助于你去猜測(cè)編碼。
UTF-8:
EF BB BF E6 B5 8B E8 AF 95 31 32 33 34
UTF-16:
FF FE 4B 6D D5 8B 31 00 32 00 33 00 34 00
UTF-16 Big endian :
FE FF 6D 4B 8B D5 00 31 00 32 00 33 00 34
最后附上兩個(gè)小工具,能幫你生成各種文字的字符和識(shí)別字符在不同code page下的編碼。just have fun
http://www.shnenglu.com/Files/sandy/encoding_tools.rar