看到問號或看不懂的字元就是亂碼,需要明確地指定字符集,很多字符集都只編碼了部分字元,總會有些字碼沒有包含,這時就出問號,如果僅是恰好有個數字編碼相同的字但實質上不是為這個字元準備的則會顯示成看不懂的樣子,比如在中文中看到日文字元這種。避免亂碼的前提是我們知道接收到的資料本身是以什麼字符集編碼儲存或傳送的,如果不知道這點就無法避免亂碼。比如我們從香港客戶手中收到一份繁體字的文件,它可能就是用港臺的 Big5 或 Big5-HKSCS 字符集 (MS950) 儲存的,那我們需要使用能相容它的字符集才能正確地顯示,因此我們也會明確地指定使用 Big5 作為字符集編碼。對於大陸電腦常用的 GBK,我們使用新的 GB18030 是能相容 GBK 的,GBK是行業推薦標準,但 GB18030 是國家強制標準,也就是說如果一個像 Windows 中文版這樣的軟體面向中國使用者發行如果不支援 GB18030 就是不一個質量合格的軟體。在 Eclipse 中字符集編碼設定有三種地方:Window > Preference > General > Workspace # EncodingProject Properties (右擊專案》屬性) 右擊檔案屬性。上面這三種越寬泛的優先順序越低,所以優先順序是從低到高的。
看到問號或看不懂的字元就是亂碼,需要明確地指定字符集,很多字符集都只編碼了部分字元,總會有些字碼沒有包含,這時就出問號,如果僅是恰好有個數字編碼相同的字但實質上不是為這個字元準備的則會顯示成看不懂的樣子,比如在中文中看到日文字元這種。避免亂碼的前提是我們知道接收到的資料本身是以什麼字符集編碼儲存或傳送的,如果不知道這點就無法避免亂碼。比如我們從香港客戶手中收到一份繁體字的文件,它可能就是用港臺的 Big5 或 Big5-HKSCS 字符集 (MS950) 儲存的,那我們需要使用能相容它的字符集才能正確地顯示,因此我們也會明確地指定使用 Big5 作為字符集編碼。對於大陸電腦常用的 GBK,我們使用新的 GB18030 是能相容 GBK 的,GBK是行業推薦標準,但 GB18030 是國家強制標準,也就是說如果一個像 Windows 中文版這樣的軟體面向中國使用者發行如果不支援 GB18030 就是不一個質量合格的軟體。在 Eclipse 中字符集編碼設定有三種地方:Window > Preference > General > Workspace # EncodingProject Properties (右擊專案》屬性) 右擊檔案屬性。上面這三種越寬泛的優先順序越低,所以優先順序是從低到高的。