Java 的几种文件拷贝方式
warning:
这篇文章距离上次修改已过442天,其中的内容可能已经有所变动。
在Java中,文件复制可以通过多种方式实现,以下是几种常见的方法:
- 使用
java.io.FileInputStream和java.io.FileOutputStream:
try (FileInputStream fis = new FileInputStream("source.txt");
FileOutputStream fos = new FileOutputStream("dest.txt")) {
byte[] buffer = new byte[1024];
int length;
while ((length = fis.read(buffer)) > 0) {
fos.write(buffer, 0, length);
}
}- 使用
java.nio.file.Files类的copy方法:
Files.copy(Paths.get("source.txt"), Paths.get("dest.txt"), StandardCopyOption.REPLACE_EXISTING);- 使用Apache Commons IO库的
FileUtils类:
import org.apache.commons.io.FileUtils;
FileUtils.copyFile(new File("source.txt"), new File("dest.txt"));- 使用Java 7的
java.nio.file.Path和Files类:
Files.copy(Paths.get("source.txt"), Paths.get("dest.txt"), StandardCopyOption.REPLACE_EXISTING);以上代码示例都假设源文件和目标文件都存在且路径正确。每种方法都有其优点和适用场景,例如,FileInputStream和FileOutputStream适合低级别的控制,而Files.copy方法提供了更高级别的抽象,更易于使用,并且能够处理更多的复制选项。
评论已关闭