1.转换流概述
- 编码引出的问题
在Eclipse中,使用FileReader 读取硬盘中的文本文件。在Windows系统中,由于Eclipse默认采用的都是GBK编码,当读取UTF-8编码格式的文本文件时,就会出现乱码的情况。
【示例】编码引出的问题案例
public class Test {
public static void main(String[] args) {
FileReader reader = null;
try {
// 字符输入流,操作的demo.txt的编码格式为:UTF-8
reader = new FileReader("E:\\demo.txt");
// 读取文件数据
int read = 0;
while ((read = reader.read()) != -1) {
System.out.print((char)read);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
reader.close(); // 关闭流
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
输出的结果为:
当Eclipse默认采用GBK编码的情况下,那么如何读取UTF-8编码的文件呢?答案