Unicode 與 UTF-8

什麼是 Unicode

Unicode(統一碼、萬國碼、單一碼)是計算機科學領域裏的一項業界標準,包括字符集、編碼方案等。Unicode 是爲了解決傳統的字符編碼方案的侷限而產生的,它爲每種語言中的每個字符設定了統一併且唯一的二進制編碼,以滿足跨語言、跨平臺進行文本轉換、處理的要求。1990年開始研發,1994年正式公佈

什麼是 UTF-8 編碼

UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字符編碼,又稱萬國碼。由Ken Thompson於1992年創建。現在已經標準化爲RFC 3629。UTF-8用1到6個字節編碼Unicode字符。用在網頁上可以統一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。

中文是如何進行 UTF-8 編碼的

從上面可以得知, 包括中文在 unicode 編碼集也會有對應的二進制碼(目前都是以 16 進製表示)
比如 你好 對應的 unicode\u4f60\u597d 去掉前面的 \u 轉義符號剩下 4f60 597d , 編碼規則如下

Unicode bit數 UTF-8
0000 ~ 007F 0~7 0XXX XXXX
0080 ~ 07FF 8~11 110X XXXX 10XX XXXX
0800 ~ FFFF 12~16 1110XXXX 10XX XXXX 10XX XXXX
1 0000 ~ 1F FFFF 12~16 11110XXX 10XX XXXX 10XX XXXX 10XX XXXX

編碼以此類推
你好 對應的 Unicode 編碼爲 4f60 597d 範圍在 0800 ~ FFFF 對應的 UTF-8 格式爲 1110 XXXX 10XX XXXX 10XX XXXX, 4f60 對應的二進制編碼爲 01001111 01100000 把 X 按順序填進去得到 11100100 10111101 10100000 再轉爲 16 進製得到 E4BDA0

python 中字符串前面加個 u, 如: u’你好’, 表示的是 你好Unicode 編碼

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