bufferedread中readline方法,读取数据不全问题

line=40

 

 

while (-1 != errorReader.read()) {
    String line = errorReader.readLine();//line= "ine=40"
}

 

分析:

 

读取流的操作会导致流中的游标向后移动
例如:while的条件中的while(br.read()!=-1)
标准输出中的system.out.println(br.readLine())都导致了游标向后移动
真正使用时的readLine实际上已经不是标准输出中的readLine了

 

修改程序

 

String line = "";

while (null != (line = errorReader.readLine())) {
    syso(line);//line=40
}

 

 

 

你可能感兴趣的:(buffer)