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

© 盛亚昆 中级黑马   /  2012-3-25 16:44  /  1682 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

class  FileReaderDemo4//读取
{
        public static void main(String[] args) throws IOException
    {
                FileReader r=new FileReader("demo.txt");
                //定义一个字符串数组。用于存储读到的字符。
                //该read(char[])返回的是读到的字符个数

                char[] buf=new char[1024];//设定字符数组的长度,一般定义数组长度为1kb
       
                //int num=r.read(buf);
                int num=0;       
                while ((num=r.read(buf))!=-1)//当不等于-1是就打印读取

                {
                        String s=new String(buf,0,num);//建立一个新字符串的数组,来接受指定数组的元素
                        System.out.println(s);//读数等于几就打印几个字符

                }

                r.close();

               
        }       
}

求解 在那体现出来 把读取的字符存到char[]里了啊?

2 个回复

倒序浏览
  1. r.read(buf)
复制代码
这句话
回复 使用道具 举报
r.read(buf) 这句话  其实read(char[]) 这个方法里面 就是创建了一个数组缓冲   调用read(char c) 方法  依次的把一个一个的字符存储到char[]数组中
  所以你调用read(char[])  的方式时 只要传一个数组就可以了   他内部自动实现  将字符存储到数组中   把过程封装起来了  你只需要调用就可以了

评分

参与人数 1黑马币 +9 收起 理由
房宝彬 + 9

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马