欢迎访问宙启技术站
智能推送

Java函数:如何读取文本文件并将其内容写入另一个文件?

发布时间:2023-07-01 23:08:37

要在Java中读取文本文件并将其内容写入另一个文件,可以使用Java的输入/输出流(IO)类。下面是一个示例代码,演示了如何实现这个功能:

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

public class FileReadWriteExample {
    public static void main(String[] args) {
        String inputFile = "input.txt"; // 输入文件的路径和名称
        String outputFile = "output.txt"; // 输出文件的路径和名称

        BufferedReader reader = null;
        BufferedWriter writer = null;

        try {
            // 创建用于读取文件的BufferedReader对象
            reader = new BufferedReader(new FileReader(inputFile));

            // 创建用于写入文件的BufferedWriter对象
            writer = new BufferedWriter(new FileWriter(outputFile));

            String line;

            // 逐行读取输入文件,并将每行内容写入输出文件
            while ((line = reader.readLine()) != null) {
                writer.write(line);
                writer.newLine(); // 写入换行符
            }

            System.out.println("文件复制成功!");
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            // 关闭流对象
            try {
                if (reader != null) {
                    reader.close();
                }
                if (writer != null) {
                    writer.close();
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

在这个示例中,首先定义了输入文件的路径和名称以及输出文件的路径和名称。然后创建了一个用于读取文件的BufferedReader对象和一个用于写入文件的BufferedWriter对象。

try-catch块中,使用BufferedReader对象逐行读取输入文件,并将每行内容使用BufferedWriter对象写入输出文件。循环结束后,输出文件就包含了输入文件的内容。

最后,在finally块中关闭输入/输出流对象,以释放资源。如果发生异常,会打印异常堆栈跟踪。

使用上述代码可以实现文本文件的读取和写入,只需要将输入文件和输出文件的路径和名称替换为实际需要的文件路径和名称即可。