当前位置:首页 > Java

java 如何读取文件

2026-04-08 22:50:19Java

读取文件的方法

Java提供了多种读取文件的方式,可以根据需求选择适合的方法。以下是常见的几种方法:

使用 BufferedReader 读取文本文件

BufferedReader 适用于逐行读取文本文件,效率较高。

java 如何读取文件

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

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.txt";
        try (BufferedReader br = new BufferedReader(new FileReader(filePath))) {
            String line;
            while ((line = br.readLine()) != null) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用 Scanner 读取文本文件

Scanner 提供了更简单的逐行或按分隔符读取的功能。

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.txt";
        try (Scanner scanner = new Scanner(new File(filePath))) {
            while (scanner.hasNextLine()) {
                String line = scanner.nextLine();
                System.out.println(line);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}

使用 Files.readAllLines 读取文本文件(Java 8+)

Files.readAllLines 可以一次性读取所有行,适用于小文件。

java 如何读取文件

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
import java.io.IOException;

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.txt";
        try {
            List<String> lines = Files.readAllLines(Paths.get(filePath));
            for (String line : lines) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用 FileInputStream 读取二进制文件

FileInputStream 适用于读取二进制文件(如图片、音频等)。

import java.io.FileInputStream;
import java.io.IOException;

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.bin";
        try (FileInputStream fis = new FileInputStream(filePath)) {
            int byteData;
            while ((byteData = fis.read()) != -1) {
                System.out.print((char) byteData);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

使用 Files.readAllBytes 读取二进制文件(Java 7+)

Files.readAllBytes 可以一次性读取整个二进制文件。

import java.nio.file.Files;
import java.nio.file.Paths;
import java.io.IOException;

public class ReadFile {
    public static void main(String[] args) {
        String filePath = "example.bin";
        try {
            byte[] fileData = Files.readAllBytes(Paths.get(filePath));
            for (byte b : fileData) {
                System.out.print((char) b);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

注意事项

  • 使用 try-with-resources 语法可以自动关闭资源,避免内存泄漏。
  • 对于大文件,建议使用逐行或逐块读取的方式,避免内存不足。
  • 处理文件路径时,建议使用 Paths.get()File 类来确保跨平台兼容性。

标签: 文件java
分享给朋友:

相关文章

如何使用java

如何使用java

安装Java开发环境 下载并安装Java Development Kit(JDK),推荐从Oracle官网或OpenJDK获取最新版本。安装完成后配置环境变量,确保JAVA_HOME指向JDK安装路径…

如何运行java项目

如何运行java项目

运行Java项目的步骤 确保Java环境已安装 在运行Java项目前,需确认系统已安装Java Development Kit(JDK)。通过命令行输入java -version和javac -ver…

java如何创建项目

java如何创建项目

使用IDE创建Java项目(以IntelliJ IDEA为例) 打开IntelliJ IDEA,选择“New Project”。 在左侧菜单中选择“Java”,确保已配置JDK(若无需手动添加)。 勾…

java如何连接mysql

java如何连接mysql

连接 MySQL 数据库的基本步骤 添加 MySQL 驱动依赖 在项目中引入 MySQL 的 JDBC 驱动。如果使用 Maven,在 pom.xml 中添加以下依赖: <dependency…

java如何运行程序

java如何运行程序

运行Java程序的步骤 安装Java开发工具包(JDK) 确保系统已安装JDK,可通过命令行输入java -version和javac -version验证。若未安装,需从Oracle官网下载并配置环…

java如何获取当前时间

java如何获取当前时间

获取当前时间的方法 在Java中,可以通过多种方式获取当前时间。以下是几种常见的方法: 使用 java.util.Date Date currentDate = new Date(); Syste…