Java——数据读取优化

来源:互联网 发布:电路图软件 编辑:程序博客网 时间:2024/06/04 19:11
//temp.txt中放的是abcdeimport java.io.*;class test{    public static void main(String[] args) throws IOException{        //int read(char[] cbuf) 将字符读入数组        FileReader fr = new FileReader("temp.txt");        char[] arr = new char[2];        int num;        /*        num = fr.read(arr);//把从文件中读的数据存到数组中,返回的是读取字符的个数        System.out.print(new String(arr));//ab        num = fr.read(arr);//把从文件中读的数据存到数组中        System.out.print(new String(arr));//cd        num = fr.read(arr);//把从文件中读的数据存到数组中        //System.out.print(new String(arr));//ed        //使用这种方法,从硬盘上读是一个一个的读,并不是一次性读2个        //int num = fr.read();num的值为2,即返回的是数组中元素的个数        //分别读完a和b,然后开始读c,读完c之后,c就把a覆盖掉了,再读d,        //d把b覆盖掉了,返回值还是2,因为读了两个数据,再读,首先读的是e,        //e把c覆盖掉了,再读就没有了,返回值是1,因为只读了一个数据,        //所以最后输出的是e和d        */        //改为下面的方法        /*num = fr.read(arr);//把从文件中读的数据存到数组中        System.out.print(new String(arr,0,num));//ab        //把arr数组,从下标0开始,转变为String,num个        num = fr.read(arr);//把从文件中读的数据存到数组中        System.out.print(new String(arr,0,num));//cd        num = fr.read(arr);//把从文件中读的数据存到数组中        System.out.print(new String(arr,0,num));//e        */        while((num=fr.read(arr))!=-1){            System.out.print(new String(arr,0,num));        }        fr.close();        //num = fr.read(arr);        //System.out.print(num);//-1    }}
原创粉丝点击