首頁 >Java >Java基礎 >java檔寫入亂碼怎麼辦

java檔寫入亂碼怎麼辦

尚
原創
2020-01-13 16:35:082670瀏覽

java檔寫入亂碼怎麼辦

在使用Java程式進行讀取、寫入含中文的txt檔案時,常會出現讀出或寫入的內容會出現亂碼。是因為系統的編碼和程序的編碼採用了不同的編碼格式。

解決方法:

採用java.io.FileInputStream/java.io.InputStreamReader和java.io.FileOutputStream/java.io.OutputStreamWriter來解決這個問題。

實作程式碼:

//默认情况下,win系统编码是gbk/gbk2312,读取和写入时加入编码字符集可以解决乱码  
public class ReadAndWrite {  
    private static void test(){  
        File firstFile = new File("D://fileone.txt");  
        File secondFile=new File("D://filesecond.txt");  
        BufferedReader in = null;  
        BufferedWriter out = null;        
        try {       
            //加入编码字符集   
            in = new BufferedReader(new InputStreamReader(new FileInputStream(firstFile), "gbk"));  
            //加入编码字符集  
            out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(secondFile), "gbk"));  
            String line = "";  
            while((line = in.readLine())!=null){  
                System.out.println(line);  
                out.write(line+"\r\n");  
            }  
        } catch (FileNotFoundException e) {  
            System.out.println("file is not fond");  
        } catch (IOException e) {  
            System.out.println("Read or write Exceptioned");  
        }finally{             
            if(null!=in){   
                try {  
                    in.close();  
                } catch (IOException e) {  
                    e.printStackTrace();  
                }}  
            if(null!=out){  
                try {  
                    out.close();  
                } catch (IOException e) {  
                    e.printStackTrace();  
                }
           }
     }  
}

更多java知識請關注PHP中文網路java基礎教學欄位。

以上是java檔寫入亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn