BufferedReader类的讲解

来源:互联网 发布:九州世界观知乎 编辑:程序博客网 时间:2024/06/06 01:58

BufferedReader它可以包装字符流,拥有8192字符的缓冲区将字符流放入缓存里,先把字符读到缓存里到缓存满了或者你flush的时候,再读入内存,就是为了提供读的效率而设计的。

用法:

//接收数据                      BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));                      String msg = in.readLine();                      if (null != msg){                           System.out.println(msg);                      }  

注意点:read()方法判断是否为空

        FileReader fr = new FileReader("D:\\Test.txt");        BufferedReader bf = new BufferedReader(fr);        int temp;        while ((temp = bf.read()) != -1){            System.out.println(bf.readLine());        }

结果每行的第一个字符都没有显示出来,原因:(temp=bf.read())!=-1  每次都会先读取一个字节出来,所以后面的bf.readLine()读取的就是每行少一个字节.

String msg = null;   while ((msg=bf.readLine())!=null){    System.out.println(msg);   }


0 0
原创粉丝点击