Java Writer 类详细介绍以及用法详解

在本教程中,我们通过示例了解 Java Writer 类、它的子类和它的方法。

在本教程中,我们通过示例了解 Java Writer 类、它的子类和它的方法。

java.io 包中的 Writer 类的是一个表示字符输出流抽象超类。

Writer 类是一个抽象类,它定义了字符输出流的操作方法和一些公共的逻辑。它本身不能被实例化,它有很多子类分别实现了处理字符输出流的不同方案。

Writer 的子类

Writer 有很多子类,常用到包括:

Java Writer 的子类是 BufferedWriter、OutputStreamWriter、FileWriter 和 StringWriter。
Java Writer 类

我们将在后面的教程中了解所有这些子类。

创建 Writer

Writer 是一个抽象类,我们要通过它的子类创建它的实例。如下,我们使用 FileWriter 类创建了 Writer 对象实例:

Writer output = new FileWriter();

Writer 的方法

Writer 类定义了很多需要子类实现的抽象方法。以下是一些常用的方法:

  • write(int char) - 写入一个字符
  • write(char[] array) - 将指定数组中的字符写入输出字符流
  • write(String data) - 将指定的字符串写入输出字符流
  • append(char c) - 将指定的字符插入到当前输出字符流
  • flush() - 强制将写入器中存在的所有数据写入相应的目的地
  • close() - 关闭输出字符流

示例:使用 FileWriter 写文件

以下实例我们展示如何使用 Writer 的子类 FileWriter 将指定内容写入文件。

import java.io.FileWriter;
import java.io.Writer;

public class Main {

  public static void main(String[] args) {
    String data = "This is the data in the output file";

    try {
      Writer output = new FileWriter("output.txt");
      output.write(data);

      output.close();
    } catch (Exception e) {
      e.getStackTrace();
    }
  }
}

在上面的示例中,我们使用 FileWriter 类创建了一个 Writer 对象,并与文件 input.txt 关联起来。如下:

Writer output = new FileWriter("output.txt");

然后我们使用 write() 方法读取数据,最后使用 close() 方法关闭了对象。

output.write();
output.close();

我们成功运行程序后,output.txt 文件的内容如下:

This is a line of text inside the file.