字符输入流读取文本文件【Reader、FileReader、BufferedReader 】

字符输入流读取文本文件

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类带有缓冲区,它可以先把一批数据读到缓冲区,接下来的读操作都是从缓冲区内获取数据,

  避免每次都从数据源读取数据进行字符编码转换,从而提高读取操作的效率。

原文地址:https://www.cnblogs.com/yijiaqi/p/6907508.html