Java 简明教程

Java - FileReader Class

Introduction

Java.io.FileReader 类是一个用于读取字符文件的便捷类。以下是有关 FileReader 的重要说明 −

  1. 此类的构造函数假设默认字符编码和默认字节缓冲区大小是合适的。

  2. FileReader 用于读取字符流。要读取原始字节流,请使用 FileInputStream。

Class declaration

以下是 Java.io.FileReader 类声明 −

public class FileReader
   extends InputStreamReader

Field

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

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

Class constructors

Sr.No.

Constructor & Description

1

FileReader(File file) 此构造函数创建了新的 FileReader,给定了要读取该文件的 File。

2

FileReader(FileDescriptor fd) 此构造函数创建了新的 FileReader,给定了要读取该文件的 FileDescriptor。

3

FileReader(String fileName) 此构造函数创建了新的 FileReader,给定了要读取该文件的文件名。

一旦你有了 FileReader 对象,就可以使用一系列帮助方法来操作文件。

Sr.No.

Method & Description

1

public int read() throws IOException 读取单个字符。返回一个代表所读取字符的 int。

2

public int read(char [] c, int offset, int len) 将字符读取到一个数组中。返回所读取的字符数量。

Example 1

以下示例展示了 Java FileReader 类的用法。我们已创建一个名为 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 FileReader 类的用法。我们已创建一个名为 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