(1)使用FileInputStream、FileOutputStreaem和FileReader、FileWriter分别进行拷贝。 (2)使用字节流拷贝时,定义一个1024长度的字节数组作为缓冲区,使用字符流拷贝,
时间: 2024-03-01 21:50:36 浏览: 70
定义一个char数组作为缓冲区,然后将源文件的数据读入缓冲区,再将缓冲区的数据写入目标文件。以下是Java代码示例:
使用FileInputStream、FileOutputStream进行拷贝:
```java
import java.io.*;
public class FileCopy {
public static void main(String[] args) {
// 源文件路径
String sourcePath = "source.txt";
// 目标文件路径
String targetPath = "target.txt";
try {
FileInputStream fis = new FileInputStream(sourcePath);
FileOutputStream fos = new FileOutputStream(targetPath);
byte[] buffer = new byte[1024];
int len;
while ((len = fis.read(buffer)) > 0) {
fos.write(buffer, 0, len);
}
fis.close();
fos.close();
System.out.println("文件拷贝成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
使用FileReader、FileWriter进行拷贝:
```java
import java.io.*;
public class FileCopy {
public static void main(String[] args) {
// 源文件路径
String sourcePath = "source.txt";
// 目标文件路径
String targetPath = "target.txt";
try {
FileReader fr = new FileReader(sourcePath);
FileWriter fw = new FileWriter(targetPath);
char[] buffer = new char[1024];
int len;
while ((len = fr.read(buffer)) > 0) {
fw.write(buffer, 0, len);
}
fr.close();
fw.close();
System.out.println("文件拷贝成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上是使用Java的IO流进行文件拷贝的示例代码。
阅读全文