字符输入流读取文本文件
1.Reader类(读取字符流的抽象类)
※Reader类的常用方法
方法名称 |
说明 |
int read() |
从输入流中读取单个字符 |
int read(byte[] c) |
从输入流中读取c .length长度的字符,保存到字节数组c中,返回实际读取的字符数 |
int read(byte[] c, int off , int len) |
从输入流中读取最多len长度的字节,保存到字节数组c中,保存的位置从off开始,返回实际读取的字符数 |
void close() |
关闭流 |
2.字符输入流FileReader类
常用构造方法:
※ FileReader (String name)
Reader fileObject=new FileReader (“C:\\test.txt”);
3.使用FileReader读取文件步骤:
1. Import java.io.*; (IOException, Reader, FileReader)
2. Reader fileObject=new File Reader (“C:\\test.txt”);
3.利用FileReader类的方法读取文本文件的数据
int r= fileObject .read (); //读取单个字符
//将文件中的内容传入数组,以数组的形式读取出来 char[ ] chars=new char[1024]; int length= fileObject. Read( chars); System.out.println (Arrays. tostring (chars)) ; |
4. fileObject .close (); //关闭文件输入流对象
4.字符输入流BufferedReader类
常用构造方法:
※ BufferedReader (Reader in)
Reader fileObject=new FileReader (“C:\\test.txt”);
BufferedReader br=new BufferedReader (BufferedReader);
5.使用BufferedReader读取文件步骤:
1. Import java.io.*; (IOException, Reader, BufferedReader)
2.创建一个BufferedReader对象
Reader fr=new FileReader (“C:\\test.txt”);
BufferedReader br=new BufferedReader (fr);
3.利用BufferedReader类的方法读取文本文件的数据
br. readLine (); //读取一行数据,返回字符串
【readLine()是BufferedReader类特有的方法】
4. br .close ();
fr .close ();
◎ FileReader和BufferedReader区别:
BufferedReader类带有缓冲区,它可以先把一批数据读到缓冲区,接下来的读操作都是从缓冲区内获取数据,
避免每次都从数据源读取数据进行字符编码转换,从而提高读取操作的效率。