能選擇的話還是應該用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節省資料庫空間。
gbk和gb2312的差別有哪些
首先大家要了解什麼是gbk?什麼是gb2312?我們要知道他們都是一種字元編碼,當然字元編碼還有很多種。
而字符編碼我們可以這樣理解:
在電腦中存放的都是0和1的二進位值。
8個位元對應一個位元組,常用16進位來表示。
那我們如果想要在電腦上看到我們想要的字元顯示,而不是各種0和1的數字該怎麼實現呢?
這裡我們就需要使計算機把其所儲存的對應的16進制的數值,轉化為對應的字符,包括英文和中文等其他語言的字符,然後輸出到屏幕上。
所以編碼也就是,定義了一套規則,去指定哪些數值,對應哪些字元。
那麼字元編碼,就是定義了一套規則,指定了電腦中存放的這麼多值中的哪個值,對應了電腦螢幕顯示出來的哪個字母。
綜上所述,大家應該都能理解GBK和GB2312是一種字元編碼了吧。
下面我們再具體說說他們的差異與相同點:
相同點:
1、GBK和GB2312 都是16位的!
2、它們通常用在網頁的meta標籤內。
不同點:
1、GBK字元編碼支援簡體中文和繁體中文!
GBK全名為《漢字內碼擴展規範》(GBK即「國標」、「擴展」漢語拼音的第一個字母,英文名稱:Chinese Internal Code Specification) ,中華人民共和國全國資訊科技標準化技術委員會1995年12月1日製訂,國家技術監督局標準化司、電子工業部科技與品質監督司1995年12月15日聯合以技監標函1995 229號文件的形式,將它確定為技術規範指導性文件。
2、GB2312只支援簡體中文!
《資訊交換用漢字編碼字元集》是由中國國家標準總局1980年發布,1981年5月1日開始實施的一套國家標準,標準號是GB 2312—1980。
GB 2312標準共收錄6763個漢字,其中一級漢字3755個,二級漢字3008個;同時,GB 2312收錄了包括拉丁字母、希臘字母、日文平假名及片假名字母、俄語西里爾字母在內的682個全角字元。
如果你的網頁主要面對使用漢語的中國人的話,使用GB2312和GBK非常好,文字儲存體積要小,有一些優點。如果你的網頁要面向世界的話,你再用GB2312和GBK作為網頁編碼的話,有些電腦上的瀏覽器沒有這種編碼,你的網頁漢字內容就會變成無法辨識的亂碼。