//temp.txt中放的是abcde
import 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
}
}
Java——数据读取优化
最新推荐文章于 2023-12-06 22:10:49 发布