Java 简明教程

Java - FileWriter Class

Introduction

Java FileWriter 类是用于编写字符文件的便捷类。下面是有关 FileWriter 的重要事项−

  1. 该类的构造函数假定默认字符编码和默认字节缓冲区大小是可以接受的。

  2. FileWriter 旨在编写字符流。为了编写原始字节流,请使用 FileOutputStream。

Class declaration

以下是 Java.io.FileWriter 类的声明 −

public class FileWriter
   extends OutputStreamWriter

Field

以下是 Java.io.FileWriter 类的字段 −

  1. protected Object lock − 这是用于同步此流上的操作的对象。

Class constructors

Sr.No.

Constructor & Description

1

FileWriter(File file) 此构造函数给定 File 对象,会创建一个 FileWriter 对象。

2

FileWriter(File file, boolean append) 此构造函数给定 File 对象,并指定一个布尔值来指示是否追加所写数据,从而创建一个 FileWriter 对象。

3

FileWriter(FileDescriptor fd) 此构造函数关联给定文件描述符创建一个 FileWriter 对象。

4

FileWriter(String fileName) 此构造函数创建一个 FileWriter 对象,给定一个文件名。

5

FileWriter(String fileName, boolean append) 此构造函数创建一个 FileWriter 对象,给定一个文件名以及一个布尔值,指示是否附加写入的数据。

一旦你拥有 FileWriter 对象,就有一个帮助器方法列表,可用于操作文件。

Sr.No.

Method & Description

1

public void write(int c) throws IOException 写入单个字符。

2

public void write(char [] c, int offset, int len) 从偏移量并使用长度 len 写入字符数组的一部分。

3

public void write(String s, int offset, int len) 从偏移量并使用长度 len 写入 String 的一部分。

Example 1

以下示例展示了 Java FileWriter 类的用法。我们创建了名称为 Hello1.txt 的文件引用,要在当前目录中创建它。然后我们使用 createNewFile() 创建一个新文件。现在,通过传递前面创建的文件引用创建了一个 FileWriter 对象,并将一些内容写入该文件。使用 FileReader() 类,我们正在读取该文件,并打印其内容。

package com.tutorialspoint;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileDemo {

   public static void main(String args[])throws IOException {
      File file = new File("Hello1.txt");

      // creates the file
      file.createNewFile();

      // creates a FileWriter Object
      FileWriter writer = new FileWriter(file);

      // Writes the content to the file
      writer.write("This\n is\n an\n example\n");
      writer.flush();
      writer.close();

      // Creates a FileReader Object
      FileReader fr = new FileReader(file);
      char [] a = new char[50];
      fr.read(a);   // reads the content to the array

      for(char c : a)
         System.out.print(c);   // prints the characters one by one
      fr.close();
   }
}

Output

This
is
an
example

Example 2

以下示例展示了 Java FileWriter 类的用法。我们创建了名称为 Hello1.txt 的文件引用,要在提供的目录中创建它。然后我们使用 createNewFile() 创建一个新文件。现在,通过传递前面创建的文件引用创建了一个 FileWriter 对象,并将一些内容写入该文件。使用 FileReader() 类,我们正在读取该文件,并打印其内容。

package com.tutorialspoint;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class FileDemo {

   public static void main(String args[])throws IOException {
      File file = new File("F:/Test2/Hello1.txt");

      // creates the file
      file.createNewFile();

      // creates a FileWriter Object
      FileWriter writer = new FileWriter(file);

      // Writes the content to the file
      writer.write("This\n is\n an\n example\n");
      writer.flush();
      writer.close();

      // Creates a FileReader Object
      FileReader fr = new FileReader(file);
      char [] a = new char[50];
      fr.read(a);   // reads the content to the array

      for(char c : a)
         System.out.print(c);   // prints the characters one by one
      fr.close();
   }
}

Output

This
is
an
example