其实你贴的代码并没有问题
不过你可能也发现了,出现了乱码。当然这个乱码不是必然产生的。
这段代码或使用当前环境默认的编码方式去读取test.txt的字符串,如果默认编码与test.txt的编码不一致就可能会导致乱码。
这里附上另一段代码,自定义编码方式
public static void main(String[] args) {
try {
// 将D:/test.txt文件读取到输入流中
InputStream input = new FileInputStream("D:/test.txt");
// 创建BufferedReader,以gb2312的编码方式读取文件
BufferedReader reader = new BufferedReader(new InputStreamReader(input, "gb2312"));
String line = null;
// 按行读取文本,直到末尾(一般都这么写)
while ((line = reader.readLine()) != null) {
// 打印当前行字符串
System.out.println(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}