码迷,mamicode.com
首页 > 其他好文 > 详细

BufferedReader类的讲解

时间:2014-11-28 10:02:51      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:字符流   缓存   bufferedreader   

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);
   }


BufferedReader类的讲解

标签:字符流   缓存   bufferedreader   

原文地址:http://blog.csdn.net/pengkv/article/details/41575353

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!