在读取文件时,使用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();
}
}
代码运行效果如下图
如果在设置编码格式后还是出现文件乱码,检查一下文件编码格式是不是于设置的不一致。如果不一致的情况可以将文件另存为指定编码格式,文件另存为操作如下