天天看點

Java 讀取檔案中文亂碼處理 Java IO讀取txt檔案内容的正确姿勢避免中文亂碼

在讀取檔案時,使用InputStreamReader 指定編碼格式避免中文亂碼

@Test
    public void txtTest() {
        File file = new File("D:\\images\\imobile冠晨達專賣店\\鋼化膜-11\\鋼化膜\\1+8t\\銷售屬性.txt");
        try (FileInputStream fis = new FileInputStream(file);
             InputStreamReader isr = new InputStreamReader(fis, "gbk");
             BufferedReader br = new BufferedReader(isr)) {
            String str;
            while ((str = br.readLine()) != null) {
                System.out.println("str = " + str);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
        File file2 = new File("D:\\images\\imobile冠晨達專賣店\\鋼化膜-11\\鋼化膜\\1+8t\\銷售屬性.txt");
        try (FileReader reader2 = new FileReader(file2);
             BufferedReader br2 = new BufferedReader(reader2)) {
            String str2;
            while ((str2 = br2.readLine()) != null) {
                System.out.println("str2 = " + str2);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }

    }
           

代碼運作效果如下圖

Java 讀取檔案中文亂碼處理 Java IO讀取txt檔案内容的正确姿勢避免中文亂碼

如果在設定編碼格式後還是出現檔案亂碼,檢查一下檔案編碼格式是不是于設定的不一緻。如果不一緻的情況可以将檔案另存為指定編碼格式,檔案另存為操作如下

Java 讀取檔案中文亂碼處理 Java IO讀取txt檔案内容的正确姿勢避免中文亂碼
Java 讀取檔案中文亂碼處理 Java IO讀取txt檔案内容的正确姿勢避免中文亂碼