将一个 ASCII 编码的文件使用 InputStreamReader 转为utf-8 读出,输出的中文字符是乱码,但用gbk、gb2312读出却没有问题
#
#
原代码:
public static void main(String[] args) throws IOException {
String filePath = "d:\\1\\a.txt";
//
//指定编码为 utf-8
InputStreamReader isr = new InputStreamReader(new FileInputStream(filePath),"utf8");
BufferedReader br = new BufferedReader(isr);
String str = br.readLine();
System.out.println(str);
br.close();
}
#
#
结果:
���,wordgood!hello
进程已结束,退出代码0
使用 gbk 进行转码读取就没有乱码现象,这是什么情况