1、删除文件
要使用Java删除文件,请使用delete()
方法:
例如:
import java.io.File; // Import the File class
public class DeleteFile {
public static void main(String[] args) {
File myObj = new File("filename.txt");
if (myObj.delete()) {
System.out.println("Deleted the file: " + myObj.getName());
} else {
System.out.println("Failed to delete the file.");
}
}
}
2、删除文件夹
除了能删除文件,也可以删除文件夹。但是,删除的文件夹必须为空:
例如:
import java.io.File;
public class DeleteFolder {
public static void main(String[] args) {
File myObj = new File("C:\\Users\\cjavapy\\Test");
if (myObj.delete()) {
System.out.println("Deleted the folder: " + myObj.getName());
} else {
System.out.println("Failed to delete the folder.");
}
}
}
3、删除某个目录及目录下的所有子目录和文件
删除某个目录及目录下的所有子目录和文件。File.delete()只能删除某个文件或者空目录,要想要删除某个目录及其所有子文件和子目录,要使用递归进行删除。
例如,
package com.harara.file.del;
import java.io.File;
/**
* 删除某个目录及目录下的所有子目录和文件
*/
public class DelFiles {
/**
* 递归删除
* 删除某个目录及目录下的所有子目录和文件
* @param file 文件或目录
* @return 删除结果
*/
public static boolean delFiles(File file){
boolean result = false;
//目录
if(file.isDirectory()){
File[] childrenFiles = file.listFiles();
for (File childFile:childrenFiles){
result = delFiles(childFile);
if(!result){
return result;
}
}
}
//删除 文件、空目录
result = file.delete();
return result;
}
public static void main(String[] args) {
File file = new File("E:\\temp");
System.out.println("result:"+delFiles(file));
}
}
4、使用 Files.delete()
删除文件 (Java 7+)
如使用 Java 7 或更高版本,可以使用 java.nio.file.Files
类中的 delete()
方法来删除文件。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class Main {
public static void main(String[] args) {
Path path = Paths.get("path/to/your/file.txt");
try {
Files.delete(path);
System.out.println("文件已成功删除");
} catch (IOException e) {
System.out.println("文件删除失败: " + e.getMessage());
}
}
}
相关文档: