666
京東網上商城
GBK與utf-8的區別
GBK與UTF-8的區別
先說GB2312
GB2312是GBK的子集,GBK是GB18030的子集。
GB2312編碼大約包含6000多漢字(不包括特殊字符),編碼範圍為第一位b0-f7,第二位編碼範圍為a1-fe(第一位為cf時,第二位為a1-d3),計算一下漢字個數為6762個漢字。當然還有其他的字符。包括控製鍵和其他字符大約7573個字符編碼
GBK是包括中日韓字符的大字符集合,GBK編碼是對GB2312編碼的擴充,容納的漢字更多,但僅僅是擴充,沒有質的變化。保留了所有GB2312編碼,在此基礎上進行編碼範圍的擴充.容納(包含特殊字符)共22014個字符編碼。
GB18030編碼是在GBK編碼基礎上的擴充,因為漢字更多,僅僅使用兩位編碼已經不能容納要求的漢字,所以采用了2\4位混和的辦法,可以支持更多的漢字編碼。並且保留了原有的GBK 2字節編碼兼容GB2312和gbk編碼的文件。大概容納55657個編碼(包含特殊字符)。
重點:GB2312能完美的支持簡體中文和英文,一個中文文字占用2個字節,一個英文字母同樣占用2個字節。
問題產生了:在沒有安裝IE的簡體中文支持的電腦上看GB2312編碼的網頁,其中中文都會是亂碼,比如一位英國人在倫敦瀏覽你的網頁,看到的除了英文字母正常外其他的都會是亂七八糟,就像火星文。
再說UTF-8
UTF-8是unicode,可以看作是大字符集,它包含了大部分文字的編碼。為表達更多的文字,UTF-8采用2/3混編的方式。目前所容納的漢字範圍小於GBK編碼。
重點:UTF-8能完美的支持英文和中文,甚至其他文,一個中文文字占用3個字節,一個英文字母同樣占用1個字節。
使用UTF-8的一個最大好處是其他地區的用戶(如美國、印度、台灣)無需安裝IE的簡體中文支持就能正常觀看你的文字而不會出現亂碼。通常網絡傳輸也是用UTF-8編碼。
綜上:根據你的網站的內容和瀏覽的對象以及對數據的儲存空間的權衡,就很好做出編碼選擇了。
最後更新:2017-11-11 11:34:13