readLine() 的内部代码类似下面代码:
//定义一个缓冲区 tringBuilder sb = new StringBuilder(); int ch = 0; //文件结尾返回-1 while((ch=r.read())!=-1){ if(ch=='\r') continue; if(ch=='\n') //如果读到换行符,则把缓冲区的内容转为字符串返回 return sb.toString(); else //往缓冲区添加字符 sb.append((char)ch); } //如果最后一行没有回车符也表读到未尾了,就把这些字符串返回去。 if(sb.length()!=0) return sb.toString(); return null; |