Java笔记-解决读取文件时中文乱码问题(InputStreamReader设置编码)

467 阅读1分钟

Java一般读取文件时使用如下代码:

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("xxx");

BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream);
while(reader.ready()){

    String line = reader.readLine();
    System.out.println(line);
}
reader.close();
inputStream.close();

有时,这个文件是utf-8的,Java默认是能读的,有的是GBK的,可以用InputStreamReader设置编码

InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("xxx");

BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "gbk");
while(reader.ready()){

    String line = reader.readLine();
    System.out.println(line);
}
reader.close();
inputStream.close();