字符输入流读取文本文件

  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”);
  使用FileReader读取文件步骤:
    (1) 引入相关类(IOException, Reader,  FileReader)
           Import java.io.*;
    (2) 创建一个FileReader对象
                    Reader fileObject=new File Reader (“C:\\test.txt”);
    (3) 利用FileReader类的方法读取文本文件的数据
          int read ();          //读取单个字符
    (4) 关闭文件输入流对象
           fileObject .close ();
  3.字符输入流BufferedReader类
    常用构造方法:
          ※  BufferedReader (Reader in)
                Reader fileObject=new FileReader (“C:\\test.txt”);
                         BufferedReader br=new BufferedReader (BufferedReader);
 
    使用BufferedReader读取文件步骤:
      (1) 引入相关类(IOException, Reader, BufferedReader)
             Import java.io.*;
      (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类带有缓冲区,它可以先把一批数据读到缓冲区,接下来的      读操作都是从缓冲区内获取数据,避免每次都从数据源读取数据进行字符编码转换,从而提高读取操作的效率。

 

字符输出流写文本文件

  1. Writer类

  

Writer的常用方法

方法名称

说明

write(String str)

将str字符串里包含的字符输出到指定的输出流中

write(String str , int off , int len)

将str字符串从off位置开始,长度为len的字符输出到输出流中

void close()

关闭输出流

void flush()

刷新输出流

2.字符输入流FileWriter类
    常用构造方法:
          ※  FileWriter (String name)
                Writer fileObject=new FileWriter (“C:\\test.txt”);
 
    使用FileWriter读取文件步骤:
      (1) 引入相关类(IOException, FileWriter)
             Import java.io.*;
      (2) 创建一个FileWriter对象
                      Writer fr=new FileWriter (“C:\\test.txt”);
      (3) 利用FileWriter类的方法写文本文件
               fr. write (“hello”);
      (4) 关闭文件输出流
             fr. close ();
 
  3.字符输入流BufferedWriter类
  常用构造方法:
      ※  BufferedReader (Writerout)
            Writer fw=new File Writer (“C:\\test.txt”);
                BufferedWriter  br=new Buffered Writer (fw);
  使用BufferedWriter和FileWriter将数据写入文件:
    (1) 引入相关类(IOException, FileWriter, BufferedWriter)
           Import java.io.*;
    (2) 创建一个BufferedWriter对象
                      FileWriter fw=new FileWriter (“C:\\test.txt”);
                        BufferedWriter bw=new BufferedWriter (fw);
    (3) 利用BufferedWriter类的方法写文本文件
            bw. write(“hello”);
    (4) 关闭文件输入流对象
            bw .flush ();        //刷新该流的缓冲
             fw .close ();
 
※   替换文本文件内容:replace(文件中的内容,替换的内容)
            【要用一个变量接收其返回的数据】
※   使用FileWriter写网页文件时:
        换行:“\r\n”或“<br/>”
     使用BufferedWriter写网页文件时:
        换行:bw. newLine();【在文本文件中会显示换行,但在html文件中不会换行】