A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

问题在文中注释的地方,求各位哥哥们解下惑!!
import java.io.*;
class test4
{
        public static void main(String[] args) throws IOException
        {
        FileReader r = new FileReader("test.java");
        MyBuff mb = new MyBuff(r);
        String line = mb.MyReadLine();//这里调用了下面MyBuff类的MyReadLine()方法,为什么输出结果只是打印出文件的一行,而不是整个文件
        System.out.println(line);
        mb.Myclose();
        }
}
class MyBuff
{
        private FileReader r;
        MyBuff(FileReader r)
        {
                this.r=r;
        }
        public String MyReadLine() throws IOException
        {
                StringBuilder sb = new StringBuilder();
                        int ch = 0;
                while((ch=r.read())!=-1)//这个循环不是打印出了整个文件才会停么?????????
                {
                        if(ch=='\r')
                                continue;
                        if(ch=='\n')
                                return sb.toString();
                        else
                        sb.append((char)ch);
                }
                return null;
        }
        public void Myclose() throws IOException
        {
                r.close();
        }
}


1 个回复

倒序浏览
   if(ch=='\n')
                                return sb.toString();
遇到换行符返回。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马