在IDEA当中使用FileReader读取项目中的文本文件的时候,由于IDEA的默认编码表是UTF-8编码,所以没有任何问题,但是当读取一个本地的windows文本中的文件的时候,由于windows系统默认的是GBK编码,所以会出现乱码
举例示范如下:
已知我么在保存b.txt文件的时候选择的是系统默认编码表,内容是:你好呀
public static void main(String[] args) throws IOException {
FileReader fr = new FileReader("D:\\b.txt");
int len = 0;
while ((len = fr.read()) != -1){
System.out.println((char)len);
}
fr.close();
}
控制台打印输出得到的结果为乱码,如下: