Java字符編碼筆記

二進制位(bit)
字節(byte)
byte = 8 bit = 256

標準ASCII = 256 = 1byte
GB2312 = 標準ASCII+簡體漢字 = 2byte
GBK = GB2312 + 繁體漢字 = 2byte

UNICODE 萬國碼(變長)
utf8 中文= 3-4byte

mysql的utf8並不完全兼容標準的utf8編碼,後續推出了utf8mb4完全兼容,推薦採用utf8mb4

中文在utf-8中佔3or4個字節,

utf8字符是變長字符,
在這裏補充一下uft-8的編碼方式。
一字節:0*******
兩字節:110*****,10******
三字節:1110****,10******,10******
四字節:11110***,10******,10******,10******
五字節:111110**,10******,10******,10******,10******
六字節:1111110*,10******,10******,10******,10******,10******
拿到字節串後,想判斷UTF8字符的byte長度,
只需要獲取該字符的首個Byte,根據其值就可以判斷出該字符由幾個Byte表示。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章