1. 程式人生 > >今天遇到一個問題,獲取properties配置檔案中的中文時會出現亂碼的情況

今天遇到一個問題,獲取properties配置檔案中的中文時會出現亂碼的情況

1.遇到的第一個問題,寫入properties的中文出現亂碼的情況

解決的辦法:window-->perferences-->General(常規設定)-->content types-->Text-->java properties file

設定為utf-8,點選update後,再建立properties即可

2.當使用inputStream讀取時

public Map<String, String> proRead(String proName){
        Properties pro = new Properties();
        Map<String, String> mpro = new HashMap<String, String>();
        InputStream is=getClass().getResourceAsStream(proName);
        try {
            pro.load(is);
            @SuppressWarnings("rawtypes")
            Enumeration en=pro.propertyNames();
            while (en.hasMoreElements()) {
                String key=(String) en.nextElement();
                String value=pro.getProperty(key);
                mpro.put(key, value);
                
            }
            return mpro;
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        return null;
       

結果:

嘗試了很多的方法,最後選擇使用第三種

3.使用InputStreamReader來進行讀取

可以完美的解決亂碼的問題