字符編碼GBK、GB2312和UTF-8的區別與聯系


在計算機系統內,文本信息的存儲使用的ASC II碼。

什么是ASC II碼呢?

ASC II碼全稱是“美國信息交換標准代碼”,從字面上我們就能知道,這是一套用於顯示英語和西歐語種的編碼體系。

它包含常用的英文字母、數字及一些特殊字符和控制符等共計127個字符,是最通用的單字節編碼系統,即一個字符對應一個唯一的ASC II碼。

 

隨着個人計算機在全球的普及,很明顯單字節的字符編碼根本不能滿足各個國家、各個語種的編碼和顯示需求,這個時候就需要針對不同語種定制不同的編碼規范。

GBK、GB2312以及UTF-8就是在這種條件下誕生的。

 

先來看看GB2312和GBK這兩種中文編碼規范。

GB指代的“國標”,即“國家標准”。

GB2312包含了常用的中文字符,同時也兼容ASCII碼。在這種編碼規范中,ASCII碼占一個字節,碼值在0~127之間;中文字符占兩個字節,碼值在127~256之間。

GBK兼容GB2312編碼,但比GB2312包含了更多的漢字:中文存儲時,第一個字節碼值在127~256之間,第二個字節碼值在0~256之間。

 

再來看看UTF8編碼。

UFT8是一種國際化的編碼方式,包含了世界上大部分的語種文字,也兼容ASCII碼。

這類標准依據文字的不同,使用1~6個字節來存儲字符,是一種多字節的編碼規范。它對英文使用一個字節(8位)存儲,對中文使用三個字節(24位)存儲。

 

在WEB編碼格式的使用上應該如何選擇呢?

編碼格式的選擇主要在於文本內容和面向的用戶范圍。

UTF8是國際通用編碼,適用范圍更廣,如果文本內容的英文字符較多或者注重多國用戶體驗的網站,UTF8是首選。

但UTF8占用的數據庫比GBK大,如果基本上需要顯示中文字符,可以考慮適用GBK編碼,畢竟它是GB2312的超集。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM