UTF 8的編碼方式

2021-09-05 14:59:05 字數 644 閱讀 8416

utf編碼

utf-8就是以8位為單元對ucs進行編碼。從ucs-2到utf-8的編碼方式如下:

ucs-2編碼(16進製制)

utf-8 位元組流(二進位制)

0000 - 007f

0******x

0080 - 07ff

110***xx 10******

0800 - ffff

1110***x 10****** 10******

例如「漢」字的unicode編碼是6c49。6c49在0800-ffff之間,所以肯定要用3位元組模板了:1110***x 10****** 10******。將6c49寫成二進位制是:0110 110001 001001, 用這個位元流依次代替模板中的x,得到:11100110 10110001 10001001,即e6 b1 89。

utf-16以16位為單元對ucs進行編碼。對於小於0x10000的ucs碼,utf-16編碼就等於ucs碼對應的16位無符號整數。對於不小於0x10000的ucs碼,定義了乙個演算法。不過由於實際使用的ucs2,或者ucs4的bmp必然小於0x10000,所以就目前而言,可以認為utf-16和ucs-2基本相同。

介紹utf8編碼

utf8並不算是一種電腦編碼,而是一種儲存和傳送的格式,如前所述,每個unicode ucs字元都以 2或4個bytes來儲存,看看以下的比較 以 i am chinese 為例 用ansi儲存 12 bytes 用unicode ucs2儲存 24 bytes 2 bytes header 用uc...

UTF8編碼 解碼

參考文件 rfc3629標準.對於任意乙個字,都可以用乙個唯一碼 unicode碼,由標準編制 表示,在應用過程中,需要對碼進行編碼.常用的編碼方式為utf 8.utf 8採用類似於ip位址分配的機制.即對於不同範圍的unicode碼,採用不同的模板進行編碼.流程概述為 2.1 查表獲取unicod...

utf8的編碼演算法

unicode字符集是我們世界上最完善最全面的字符集,幾乎包含了世界上所有的字元。其實可以這麼理解,unicode字符集是一張巨大的 把世界上各種語言的字元和標點符號都編排到裡面,然後按照一定的順序給每個字元排號 很遺憾的是對於中文來說,這個順序不是按照漢語拼音的順序 有了這張巨大的 世界上大部分字...