/*
/java FileReader的第二种读取方式read(char[])
现将读取的字符存到字符数组,然后在一起打印
*/
import java.io.*;
//import java.util.*;public class FileReaderDemo2 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
FileReader fr=null;
char[] buf=new char[1024];
try{
//定义一个字符数组,用于存储读到的字符
//该read(char[])返回的是读到的字符个数int
//一个字符两个字节,1024
fr=new FileReader("e:\\demo.txt");
int num=0;
while((num=fr.read(buf))!=-1){
//继续读还是往buf里面装所以前面的会被后面进来的替代了
System.out.print(new String(buf,0,num));
/*因为read(char[])返回的是字符的个数,当打印长度不够1024时,则直接返回的是个数,因为我们是将字符数组buf打印成字符串,所以不足1024的时候得使用new String(char[] ,0,num);(从哪开始到哪结束)*/
}//System.out.println("num"+num+"..."+new String(buf));//Arrays.toString(buf)
}catch(IOException e){
e.printStackTrace();
}finally{
try{
fr.close();
}catch(IOException e){
e.printStackTrace();
}
}
}
}