在.properties文件寫注釋時,發現中文亂碼了,由於之前在idea中有見設置.properties文件的編碼類型,便找了找亂碼原因
在中文操作系統中,Eclipse中的Java類型文件的編碼的默認設置是GBK,但是對Properties資源文件的編碼的默認設置是ISO-8859-1。所以編輯Java文件中的中文不會出現問題,但編輯Properties資源文件中的中文會出現問題。
解決亂碼方法1:
右擊該properties文件–>properties–>Resource–>Text file encoding,選中other,選擇其它編碼方式,如UTF-8,這樣就能在properties里面輸入中文,而不會自動轉成Unicode了。
另外,其實如果key value是中文,也不一定讀不出來。比如如下的情況,打開文件流時選擇了正確的編碼方式,這樣用properties的load的方法可以加載中文的。(但有的情況下你選擇不了編碼方式自然就有問題了)
BufferedReader br = null;
Properties datas = new Properties();
br = new BufferedReader(new InputStreamReader(new FileInputStream(new File("data.properties")), "GBK"));
datas.load(br);
- 1
- 2
- 3
- 4
- 5
雖然上面這種方法解決了,但是以后想用每次都要設置,於是便想一次解決,省的以后也要設置。
解決亂碼方法2
直接修改Properties資源文件的默認編碼,在Eclipse主界面下,打開Window->Perferences->General->ContentTypes:
找到Text類型下面的Java Properties File類型的文件,選中后下面會有 默認的字符編碼,手動輸入UTF-8,然后update,接着ok即可