這篇文章主要介紹java文件寫入亂碼的解決方法,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
成都創(chuàng)新互聯(lián)成立與2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元門頭溝做網(wǎng)站,已為上家服務(wù),為門頭溝各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220在用Java程序進(jìn)行讀寫含中文的txt文件時,經(jīng)常會出現(xiàn)讀出或?qū)懭氲膬?nèi)容會出現(xiàn)亂碼。是因為系統(tǒng)的編碼和程序的編碼采用了不同的編碼格式。
解決方法:
采用java.io.FileInputStream/java.io.InputStreamReader和java.io.FileOutputStream/java.io.OutputStreamWriter來解決這個問題。
實現(xiàn)代碼:
//默認(rèn)情況下,win系統(tǒng)編碼是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文件寫入亂碼的解決方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!