本帖最后由 帅气的冬瓜 于 2013-11-27 10:50 编辑
首先了解字码表,然后是每次读到一个字符,就存到缓冲器中。当这行读完,转换成字符串输出,重新定义对象,继续读和存。
if(ch=='\r')//此处为什么用int型的ch去接受一个字符 '\r'在字码表中对应一个十六进制的数,所以是整形的,因此没有错的!
{
continue;
}
if(ch=='\n')//每次遇到反斜杠n即返回一行。
{
return sb.toString();//此处返回的应该是append每次累计添加的所有字符啊 这行读完,把这行转换成字符串输出。
}
sb.append((char)ch);//难道每次返回过后就对sb清空了 如果这行没有遇到'\r'和'\n',每读到一个字符就存到缓冲器中.上面有重新定义对象【 StringBuffer sb=new StringBuffer();】
如果不明白还可以再问的。
|