首先,不同編碼的文字,是根據文字的前兩個位元組來定義其編碼格式的。定義如下:
ansi: 無格式定義;
unicode: 前兩個位元組為fffe;
unicode big endian: 前兩位元組為feff;
utf-8: 前兩位元組為efbb;
知道了各種編碼格式的區別,寫**就容易了.
public static string get_charset( file file )
else if ( first3bytes[0] == (byte) 0xfe && first3bytes[1] == (byte) 0xff )
else if ( first3bytes[0] == (byte) 0xef && first3bytes[1] == (byte) 0xbb && first3bytes[2] == (byte) 0xbf )
bis.reset();
if ( !checked )
else if ( 0xe0 <= read && read <= 0xef )
else break;
}
else break;
}
}
loc + " " + integer.tohexstring( read ) );
}
bis.close();
} catch ( exception e )
return charset;
}
C 判斷檔案編碼
我們的專案中會包含有很多檔案,但是可能我們沒有注意到的,我們的檔案的編碼不一定是utf 8,所以可能在別人電腦執行時出現亂碼。最近在做乙個專案,這個專案可以把我們的資料夾裡的所有文字,判斷他們是什麼編碼,如果不是使用者規定的編碼,那麼就告訴使用者,是否要把它規範為設定的編碼。我們常用的編碼有 utf...
如何判斷檔案的編碼方式
最近做東西需要知道檔案 txt,html.究竟是什麼編碼方式,不然讀取檔案內容可能出現亂碼 經過網上查詢發現兩種總結一下,方便自己也方便別人 通過判斷檔案頭,不過檔案頭不是必須的,所以有些檔案是沒有檔案頭的 ef bb bf utf 8 fe ff utf 16 ucs 2,little endia...
JAVA獲取檔案編碼
當讀取檔案時,我們一般都會指定文字或字串使用的編碼格式,但有時我們不清楚是什麼編碼的時候,我們需要分析檔案或字元是什麼編碼,我們可以使用以下 獲取檔案編碼 param file 要分析的檔案 public static string getcharset file file else if firs...