当前位置:首页 > Java

java如何拼接文件

2026-03-18 03:06:24Java

使用 Files 类读取和写入文件

通过 Files.readAllBytes 读取文件内容,再通过 Files.write 追加到目标文件。适用于小文件,避免内存溢出。

Path file1 = Paths.get("file1.txt");
Path file2 = Paths.get("file2.txt");
Path output = Paths.get("output.txt");

byte[] content1 = Files.readAllBytes(file1);
byte[] content2 = Files.readAllBytes(file2);

Files.write(output, content1);
Files.write(output, content2, StandardOpenOption.APPEND);

使用 BufferedReaderBufferedWriter 逐行处理

适合大文件,逐行读取和写入,减少内存占用。

try (
    BufferedReader reader1 = new BufferedReader(new FileReader("file1.txt"));
    BufferedReader reader2 = new BufferedReader(new FileReader("file2.txt"));
    BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))
) {
    String line;
    while ((line = reader1.readLine()) != null) {
        writer.write(line);
        writer.newLine();
    }
    while ((line = reader2.readLine()) != null) {
        writer.write(line);
        writer.newLine();
    }
}

使用 FileInputStreamFileOutputStream 合并二进制文件

适用于二进制文件(如图片、视频),通过字节流直接拼接。

try (
    FileInputStream fis1 = new FileInputStream("file1.dat");
    FileInputStream fis2 = new FileInputStream("file2.dat");
    FileOutputStream fos = new FileOutputStream("output.dat")
) {
    byte[] buffer = new byte[1024];
    int bytesRead;
    while ((bytesRead = fis1.read(buffer)) != -1) {
        fos.write(buffer, 0, bytesRead);
    }
    while ((bytesRead = fis2.read(buffer)) != -1) {
        fos.write(buffer, 0, bytesRead);
    }
}

使用 Apache Commons IO 简化操作

通过 FileUtils.writeByteArrayToFile 快速实现文件合并。

java如何拼接文件

byte[] content1 = FileUtils.readFileToByteArray(new File("file1.txt"));
byte[] content2 = FileUtils.readFileToByteArray(new File("file2.txt"));
FileUtils.writeByteArrayToFile(new File("output.txt"), content1);
FileUtils.writeByteArrayToFile(new File("output.txt"), content2, true); // 追加模式

注意事项

  • 大文件需使用流式处理(如 BufferedReaderFileInputStream),避免内存不足。
  • 目标文件路径需提前检查是否存在,否则会覆盖原文件。
  • 追加模式需显式指定 StandardOpenOption.APPENDtrue 参数。

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

相关文章

java如何

java如何

Java 基础语法 Java 是一种面向对象的编程语言,语法相对严谨。每个 Java 程序必须包含一个 main 方法作为程序入口。以下是一个简单的 Java 程序示例: public class…

php实现文件下载

php实现文件下载

PHP实现文件下载的方法 通过PHP实现文件下载功能,可以采用多种方式,以下是几种常见的实现方法: 使用header()函数强制下载 设置HTTP头信息,强制浏览器下载文件而非直接打开: $fi…

如何运行java程序

如何运行java程序

编写Java代码 创建一个以.java为扩展名的文件,例如HelloWorld.java。文件内容需包含一个类定义,类名必须与文件名一致。例如: public class HelloWorld {…

如何学习java

如何学习java

学习Java的步骤 理解基础知识 从Java的基本语法开始,包括变量、数据类型、运算符、控制流(if-else、循环)等。掌握这些基础概念是后续学习的基石。 学习面向对象编程(OOP) Java是一…

java如何连接数据库

java如何连接数据库

Java连接数据库的方法 Java连接数据库通常使用JDBC(Java Database Connectivity)技术,以下是具体步骤和示例代码。 加载数据库驱动 在连接数据库之前,需要加载对应的…

如何编写java

如何编写java

编写Java程序的基本步骤 安装Java开发工具包(JDK),确保系统环境变量配置正确。可以从Oracle官网下载最新版本的JDK并进行安装。 选择一个合适的集成开发环境(IDE),如Eclipse…