{StringBuilder sb=new StringBuilder();
int ch=0;
while((ch=r.read())!=-1)
{ if(ch=='\r')
continue;
if(ch=='\n')
return sb.toString();
sb.append((char)ch);
}
if(sb.length()!=0)
return sb.toString();
return null;
如果文件最后没有回车符,那么在读取数据的最后r.read()方法会返回-1 也就是(ch=r.read())!=-1 不再成立 循环不再执行 ,
又因为return sb.toString(); 语句再循环里边 所以必须在循环外返回已经读到sb中的数据
如果sb中没有数据的话,就返回null
如果有数据就返回其字符串形式 即sb.toString()
|