亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> java

掌握 Java FileReader:构造器、核心方法与实战示例全解析

Java FileReader 类

FileReader 位于 java.io,从文件读取字符数据。继承 InputStreamReader,支持不同字符编码。


创建 FileReader

导入类:

import java.io.FileReader;

1. 按文件名

FileReader input = new FileReader("path/to/file.txt");

打开指定文件的读取器。

2. 按 File 对象

File fileObj = new File("path/to/file.txt");
FileReader input = new FileReader(fileObj);

3. 指定字符集(Java 11+)

FileReader input = new FileReader("path/to/file.txt", StandardCharsets.UTF_8);

用 Charset 按期望编码读取文件。


FileReader 关键方法

read() 方法

示例:读取 input.txt(含 “This is a line of text inside the file.”)

import java.io.FileReader;
class Main {
    public static void main(String[] args) {
        char[] buffer = new char[100];
        try (FileReader reader = new FileReader("input.txt")) {
            int readCount = reader.read(buffer);
            System.out.println("Data in the file:");
            System.out.println(new String(buffer, 0, readCount));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

输出

Data in the file: This is a line of text inside the file.

注意:将 input.txt 放在当前工作目录。


getEncoding() 方法

获取读取器使用的字符集:

import java.io.FileReader;
import java.nio.charset.StandardCharsets;
class Main {
    public static void main(String[] args) {
        try {
            FileReader defaultReader = new FileReader("input.txt");
            FileReader utf8Reader = new FileReader("input.txt", StandardCharsets.UTF_8);
            System.out.println("Default encoding: " + defaultReader.getEncoding());
            System.out.println("UTF-8 encoding: " + utf8Reader.getEncoding());
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

输出

Default encoding: Cp1252
UTF-8 encoding: UTF-8

指定字符集时 getEncoding() 返回该字符集;否则反映平台默认。


close() 方法

用后始终关闭 reader。上述 try-with-resources 自动处理。


FileReader 其他方法

方法描述
ready()指示流是否准备好可读
mark()标记流当前位置
reset()重置到最近标记位置

详见官方 Java FileReader 文档。

java

  1. 深入理解 Java final 关键字:变量、方法与类的不可变性
  2. Java instanceof 运算符完全指南:用法、继承与接口检查
  3. 精通 Java 继承:核心概念、类型与实战示例
  4. 深入理解 Java 静态嵌套类:用法、差异与实战示例
  5. 精通 Java 匿名内部类:定义、语法与实战示例
  6. Java 单例模式详解:安全实现与使用指南
  7. 精通 Java 反射:运行时检查类、方法与字段
  8. 精通 Java ArrayList:操作、方法与最佳实践
  9. 掌握 Java ObjectOutputStream:序列化、核心方法与实战示例
  10. 掌握 Java BufferedReader:高效字符流处理实战指南
  11. 掌握 Java 泛型:构建可复用、类型安全的代码
  12. 掌握 Java 文件操作:java.io 包下的创建、读取、写入与删除