Java FileReader讀取txt文件亂碼的解決方法
public class FileInAndOut { public static void main(String[] args) { //定義指定磁盤的文件的File對象 File file = new File("E:/大三下學期/Android/作業要求/java知識鞏固/work5.txt"); if(! file.exists()){ System.out.println("對不起,不包含指定路徑的文件"); }else{ //根據指定路徑的File對象創建FileReader對象 try { FileReader fr = new FileReader(file); char[] data = new char[51]; //定義char數組 int length = 0; while((length = fr.read(data))>0){ //循環讀取文件中的數據 String str = new String(data,0,length); //根據讀取文件的內容創建String 對象 System.out.println(str); //輸出讀取內容 } fr.close(); //關閉流 } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
控制臺輸出結果如下
原因是
Java中的字符流處理的最基本的單元是Unicode碼元(大小2字節),所以,我們在保存的時候要將文件的編碼格式改為utf-8
運行之后的結果為
字符流讀取UTF-8和寫出txt文件亂碼問題
亂碼問題一直都是非常難受的問題,本文解決Java中使用字符流讀取UTF-8和寫出txt文件 亂碼
話不多說,直接上圖
輸出結果:
使用代碼:
解決
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_43290288/article/details/104356569