编写一个文件拷贝程序,要求使用缓冲字符输入输出流,要拷贝的文件从本题附件中下载。 提示:使用BufferedReader 包装FileReader,BufferedWriter包装FileWriter。,用Java字节流方式编写
时间: 2024-03-11 18:49:20 浏览: 72
可以使用以下代码实现:
```java
import java.io.*;
public class FileCopyExample {
public static void main(String[] args) {
File srcFile = new File("source.txt");
File destFile = new File("dest.txt");
try (BufferedReader reader = new BufferedReader(new FileReader(srcFile));
BufferedWriter writer = new BufferedWriter(new FileWriter(destFile))) {
char[] buffer = new char[1024];
int length;
while ((length = reader.read(buffer)) != -1) {
writer.write(buffer, 0, length);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
首先,我们创建一个`File`对象,指向要拷贝的源文件和目标文件。然后,使用`BufferedReader`和`BufferedWriter`类分别包装`FileReader`和`FileWriter`对象。
在`try-with-resources`语句中,我们创建`BufferedReader`和`BufferedWriter`对象,并使用`char`类型的缓冲区来读取和写入文件内容。在循环中,我们不断地读取数据,直到读取到文件末尾。然后,将缓冲区中的数据写入到目标文件中。
需要注意的是,使用缓冲字符输入输出流可以提高文件拷贝的效率。同时,需要在循环中不断地读取数据,并使用缓冲区的数据写入到目标文件中。最后,使用`try-with-resources`语句来自动关闭流对象,避免资源泄露。
阅读全文