如何用 Java 读取文本文件

在 Java 编程中,读取文本文件是常见的操作。本文将介绍如何使用 Java 读取文本文件,并附带注意事项。

一、使用 FileReader 类

Java 的 FileReader 类可以读取字符文件。以下为使用 FileReader 类读取文本文件的基本代码:

import java.io.FileReader;
import java.io.IOException;

public static void main(String[] args) {
    FileReader reader = null;
    try {
        reader = new FileReader("C:\\test.txt");
        int ch;
        while ((ch = reader.read()) != -1) {
            System.out.print((char) ch);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (reader != null) {
            try {
                reader.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

上述代码中,我们首先创建了一个 FileReader 对象,并指定要读取的文件的路径。然后,使用 while 循环逐个读取文件中的字符,并打印出来。最后,关闭 FileReader 对象。

二、使用 BufferedReader 类

为了提高读取文件的效率,我们可以使用 BufferedReader 类。BufferedReader 类提供了 readLine() 方法,可以逐行读取文本文件。以下为使用 BufferedReader 类读取文本文件的基本代码:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public static void main(String[] args) {
    BufferedReader reader = null;
    try {
        reader = new BufferedReader(new FileReader("C:\\test.txt"));
        String line;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        if (reader != null) {
            try {
                reader.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

上述代码中,我们首先创建了一个 BufferedReader 对象,并使用 FileReader 对象作为参数进行初始化。然后,使用 while 循环逐行读取文件内容,并打印出来。最后,关闭 BufferedReader 对象。

三、注意事项

  1. 文件路径的格式应为反斜杠,如 “C:\test.txt”。
  2. 需要关闭文件流对象,以避免资源的浪费和内存泄漏问题。
  3. 在使用 BufferedReader 时,可以使用 try-with-resources 语句块进行文件流对象的自动关闭,以免忘记关闭流导致的问题。
  4. 在读取大文件时,应该使用缓冲区来提高读写效率。

总之,读取文本文件是 Java 编程中的基本操作。我们可以使用 FileReader 或 BufferedReader 类来读取文本文件,并且需要注意一些细节问题。