正确的写法是下面这样的:
BufferedReader dr = new BufferedReader(new InputStreamReader(
new FileInputStream(filePath)));
String line = dr.readLine();
while (line != null) {
System.out.println(line);
line = dr.readLine();
}
有时候我们不注意经常会写成下面那样
BufferedReader dr = new BufferedReader(new InputStreamReader(
new FileInputStream(filePath)));
while (dr.readLine()!= null) {
System.out.println(dr.readLine() );
}
这样写是错误的,导致程序只能读出 总行书/2 行字符,并且最后一次输出的是null,原因是在while循环的时候,已经读了一次,输出的时候又读了一次。