Java 使用字符缓冲流复制文件: 模仿字节缓冲流方式
以下代码使用 Java 的字符缓冲输入流和字符缓冲输出流,模仿字节缓冲输入流和字节缓冲输出流复制文件的方式,将一个文本文件的内容复制到另一个文件。
import java.io.*;
public class CopyFileUsingBufferedReaderAndWriter {
public static void main(String[] args) {
String sourceFilePath = 'source.txt';
String destinationFilePath = 'destination.txt';
try (BufferedReader reader = new BufferedReader(new FileReader(sourceFilePath));
BufferedWriter writer = new BufferedWriter(new FileWriter(destinationFilePath))) {
char[] buffer = new char[1024];
int bytesRead;
while ((bytesRead = reader.read(buffer)) != -1) {
writer.write(buffer, 0, bytesRead);
}
System.out.println('File copied successfully!');
} catch (IOException e) {
System.err.println('Error copying file: ' + e.getMessage());
}
}
}
代码说明:
- 创建 BufferedReader 对象读取源文件,创建 BufferedWriter 对象写入目标文件。
- 定义一个字符数组 buffer 来存储读取的字符。
- 使用 reader.read(buffer) 方法读取源文件内容到 buffer 数组中,返回读取的字符数量 bytesRead。
- 如果 bytesRead 不等于 -1,说明读取到数据,使用 writer.write(buffer, 0, bytesRead) 将 buffer 中的数据写入目标文件。
- 循环读取直到 bytesRead 等于 -1,表示读取完毕。
- 处理潜在的 IOException 错误。
本示例演示了如何使用 Java 的字符缓冲流进行文件复制,并提供了清晰的代码注释和错误处理机制。你可以根据实际需求修改源文件路径和目标文件路径。
原文地址: https://www.cveoy.top/t/topic/ok5k 著作权归作者所有。请勿转载和采集!