常用字元編碼簡介
阿新 • • 發佈:2019-02-07
字元編碼要注意
1. 字元編碼儲存位數
2. 中文字元編碼相容性
3. Unicode 字元編碼的 BOM
字元編碼位數參考下表
中文字元編碼相容性
常用簡體中文編碼:GB2312、GBK、GB18030。
GB2312 相容 ANSII,GBK 相容 GB2312,GB18030 相容 GBK。
GB2312 英文用1個位元組儲存,中文用 2 個位元組儲存;
GBK 英文用 1 個位元組儲存,中文用 2 個位元組儲存;
GB18030 英文用 1 個位元組儲存,中文用 2 個位元組或 4 個位元組儲存(有的漢字用2個位元組,有的用4個位元組)。
Unicode 編碼型別與BOM
UTF-8、UTF-16、UTF-32 都是 Unicode 編碼的一種。
BOM(byte order mark)位元組順序標記,是一個 Unicode 編碼字元。無BOM 即檔案中不使用 BOM,但是通常會帶有BOM。BOM 有兩類:little endian 和 big endian。big endian 意味著表示字元的若干個位元組中,高位位元組在左側,低位位元組在右側;little endian 意味著表示字元的若干個位元組中,低位位元組在左側(因此優先讀取),高位位元組在右側。通常使用 little endian。
- UTF-8 的BOM 為 EF BB BF,英文用 1 個位元組儲存,中文用 3 個位元組儲存;
- UTF-16 的 BOM 為 FF FE,英文用 2 個位元組儲存,中文用 2 個位元組儲存;
Window 系統(中文環境)預設使用 GBK 編碼。
eclipse 預設使用系統的編碼環境,即 GBK 編碼。
IntelliJ IDEA 預設使用 UTF-8 編碼。