UTF-8

UTF-8使用了變長技術,在每一個編碼區域有自己個別的字碼長度, 對UCS-2,由 1 字節至 3字節 , 對UCS-4,由 1 字節至 6 字節 ,不等,因為每組有8 bits (1 byte) ,所以稱為"UTF-8"。 UTF-8 最適合用於互聯網上或網絡上或一些需要經過調製解調器慢速傳送的文件。對於英文文本,UTF-8 的文件大小比其他轉換格式都小。

在 UTF-8內,字元由 1 個至 6 個字節為組合。如果只有一組 octets 組合, 第 1 bit 是 0,其餘 7 bits 則用來記錄有關字元的碼值。而在一個 n octets 的組合中,在最初一組 octets 內,第 1至n bits 設定為 1,接著的 1 bit 設定為 0,其餘的 bits便用來記錄有關字元的碼值;在其餘的字節中,第 1 bit 設定為 1,第 2 bit 設定為 0,餘下的 6 bits 便用來記錄有關字元的碼值。

下列舉出了不同長度的 octets 組合記錄字碼資料的方法。英文字母 'x' 代表可以用來記錄 Unicode 碼值的區域。

UCS-4 區域 (hex.)
UTF-8 octet 組合 (binary)
0000 0000-0000 007F 0xxxxxxx
0000 0080-0000 07FF 110xxxxx 10xxxxxx
0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx
0001 0000-001F FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
0020 0000-03FF FFFF 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
0400 0000-7FFF FFFF 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx