Eclipse中創建工程之后,應用工程屬性中有一個默認的編碼設置:GBK。但是,往往一些項目中需要采用UTF-8的編碼設置,GBK和UTF-8編碼的設置都可以正常使用和顯示中文字符。
那么,這兩種編碼是什么區別,又該適用什么樣的不同場景呢。
一般來說,面對的用戶是中文操作系統的用戶,包括企業內部用戶或僅僅是國內互聯網用戶等等,可以將應用編碼設置為GBK,GBK編碼的好處是字符所占字節較少,在頁面文件較大或者用戶使用量非常龐大的情況下,GBK的編碼設置可以相對減少網絡帶寬的壓力。但是,如果是使用其他語言的操作系統的用戶來訪問GBK編碼設置的系統,那就需要安裝一個可以正常顯示中文字符的語言包插件,否則中文字符無法顯示。而對于這一點來說,UTF-8編碼有著天生的優勢。
UTF是國際上任何字符通用的一個編碼方式。在UTF-8編碼中,西文字符、數字等占一個字節,而雙字節字符比如漢字 需要占用3個字節的空間,在空間存儲上它是奢侈的,但是同時換來的是不同語言平臺的通用性,也算是物有所值。
舉個例子來說,如果我們數據庫采用UTF-8編碼存儲數據,那就是沒有必要的,那樣會毫無意義的浪費很多的數據存儲空間,這里的浪費主要是因為中文字符的存儲。
相反,如果我們做一個需要國際用戶共同使用的中文網站,那UTF-8編碼就是非常合適的選擇,因為它支持了不同語言平臺用戶的無縫銜接,相對使用其它編碼的網站來說,它極大的改善了用戶體驗,這其實是一種很大的優勢。
另外,如果你開發的應用僅僅是內部使用的,那么,真的用什么文件編碼方式其實都不是主要的了。
所以,還是根據你的環境來決定吧!