编写程序:使用字符缓冲流加小数组的方式拷贝纯文本文件conf.properties。
时间: 2024-12-14 15:14:36 浏览: 2
在Java中,我们可以使用BufferedReader读取源文件,然后使用BufferedWriter写入目标文件,同时结合Character数组来提高效率。这里是一个基本的例子,展示了如何使用字符缓冲流和小数组来复制纯文本文件conf.properties:
```java
import java.io.*;
public class CopyTextFile {
private static final int BUFFER_SIZE = 1024; // 字符缓冲区大小
public static void main(String[] args) {
try {
// 源文件路径
String sourceFilePath = "conf.properties";
// 目标文件路径
String targetFilePath = "copy.conf.properties";
FileInputStream fis = new FileInputStream(sourceFilePath);
FileOutputStream fos = new FileOutputStream(targetFilePath);
char[] buffer = new char[BUFFER_SIZE]; // 小数组用于缓冲读取
int bytesRead;
while ((bytesRead = fis.read(buffer)) != -1) {
fos.write(buffer, 0, bytesRead); // 写入缓冲区的内容
}
fis.close(); // 关闭源文件流
fos.close(); // 关闭目标文件流
System.out.println("文件已成功复制。");
} catch (IOException e) {
System.err.println("错误发生: " + e.getMessage());
}
}
}
```
这个程序打开源文件和目标文件,然后在一个循环中,每次从源文件读取BUFFER_SIZE个字符,放入字符数组buffer中,再一次性写入到目标文件。当源文件结束(read()返回-1)时,关闭两个流并告知文件复制成功。
阅读全文