1. 程式人生 > >網頁編碼為什麼不用gbk或者gb2312而用utf-8

網頁編碼為什麼不用gbk或者gb2312而用utf-8

首先,GBK的文字編碼是雙位元組來表示的,至於UTF-8編碼則是用以解決國際上字元的一種多位元組編碼。

事實上Windows系統自己的程式已經全面轉向Unicode,而GBK只是為了應付中國標準的權宜之計。 


GBK的文字編碼是雙位元組來表示的,即不論中、英文字元均使用雙位元組來表示,只不過為區分中文,將其最高位都定成1。 

至於UTF-8編碼則是用以解決國際上字元的一種多位元組編碼,它對英文使用8位(即一個位元組),中文使用24位(三個位元組)來編碼。對於英文字元較多的論壇則用UTF-8節省空間。 

GBK包含全部中文字元, 
UTF-8則包含全世界所有國家需要用到的字元。 

GBK是在國家標準GB2312基礎上擴容後相容GB2312的標準(好像還不是國家標準) 


UTF-8編碼的文字可以在各國各種支援UTF8字符集的瀏覽器上顯示。 
比如,如果是UTF8編碼,則在外國人的英文IE上也能顯示中文,而無需他們下載IE的中文語言支援包。 

所以,對於英文比較多的論壇 ,使用GBK則每個字元佔用2個位元組,而使用UTF-8英文卻只佔一個位元組。 

請注意:UTF-8版本雖然具有良好的國際相容性,但中文需要比GBK/BIG5版本多佔用50%的資料庫儲存空間,因此並非推薦使用,僅供對國際相容性有特殊要求的使用者使用。 

簡單地說:
對於中文較多的論壇,適宜用GBK編碼節省資料庫空間。 
對於英文較多的論壇,適宜用UTF-8節省資料庫空間。