java讀取中文文本文件亂碼問題


今天遇到的問題是這樣:用java讀取一個中文文本文件,但讀取到的卻是亂碼,之前一直沒有問題,查清楚后,原來是因為今天是用的windows的記事本來編輯的文件,因編碼方式是的不同而導致了亂碼,解決方法就是設置編碼方式為“UTF-8”,設置方法如下:

File file = new File("文件路徑");
 Reader reader = null;
            try {
                System.out.println("以字符為單位讀取文件內容,一次讀一個字節:");
                // 設置編碼方式為UTF-8
                reader = new InputStreamReader(new FileInputStream(file),"UTF-8");
             
                
                int tempchar;
                while ((tempchar = reader.read()) != -1) {
          
                    if (((char) tempchar) != '\r') {

// 對於windows下,\r\n這兩個字符在一起時,表示一個換行。
// 但如果這兩個字符分開顯示時,會換兩次行。
// 因此,屏蔽掉\r,或者屏蔽\n。否則,將會多出很多空行。

                        System.out.print((char) tempchar);
                    }
                }
                reader.close();
            } catch (Exception e) {
                e.printStackTrace();
            }

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM