📅  最后修改于: 2023-12-03 15:22:18.891000             🧑  作者: Mango
在Java中,可以使用java.io.File
类操作文件和文件夹。文件的操作包括创建、读写、重命名、删除、复制和移动等。
移动文件可以采用两种方式:renameTo()
方法和复制+删除的方式。
renameTo()
方法renameTo()
方法可以重命名或移动文件,当目标文件夹已经存在相同文件名的文件时,会覆盖原文件。
// 源文件路径
File source = new File("C:\\data\\demo\\example.txt");
// 目标文件夹路径
File destDir = new File("C:\\data\\backup\\");
// 移动文件
if(source.renameTo(new File(destDir, source.getName()))) {
System.out.println("文件移动成功。");
} else {
System.out.println("文件移动失败。");
}
可以先复制文件到目标文件夹,然后再删除源文件。
// 源文件路径
File source = new File("C:\\data\\demo\\example.txt");
// 目标文件夹路径
File destDir = new File("C:\\data\\backup\\");
// 目标文件路径
File destFile = new File(destDir, source.getName());
try {
// 复制文件到目标文件夹
Files.copy(source.toPath(), destFile.toPath());
System.out.println("文件复制成功。");
// 删除源文件
if(source.delete()) {
System.out.println("文件删除成功。");
} else {
System.out.println("文件删除失败。");
}
} catch(IOException e) {
e.printStackTrace();
}
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
public class FileMoveDemo {
public static void main(String[] args) {
// 源文件路径
File source = new File("C:\\data\\demo\\example.txt");
// 目标文件夹路径
File destDir = new File("C:\\data\\backup\\");
// 方法一:使用renameTo()方法
/*
if(source.renameTo(new File(destDir, source.getName()))) {
System.out.println("文件移动成功。");
} else {
System.out.println("文件移动失败。");
}
*/
// 方法二:使用复制+删除的方式
File destFile = new File(destDir, source.getName());
try {
// 复制文件到目标文件夹
Files.copy(source.toPath(), destFile.toPath());
System.out.println("文件复制成功。");
// 删除源文件
if(source.delete()) {
System.out.println("文件删除成功。");
} else {
System.out.println("文件删除失败。");
}
} catch(IOException e) {
e.printStackTrace();
}
}
}
本文介绍了两种方式使用Java将文件从一个目录移动到另一个目录,即renameTo()
方法和复制+删除的方式。需要注意的是,当目标文件夹已经存在相同文件名的文件时,renameTo()
方法会覆盖原文件,而复制+删除的方式需要手动删除源文件。