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()); } } }
相关文档: