1、如果是文件或者空文件夹 直接 得到该文件或者文件夹的file对象 file.delete();
返回 true 删除成功
2、如果是非空文件夹
比如我们先选择一个文件 比如 下图 iKun文件夹

delete删除非空目录需要 遍历该目录下的所有内容 之后 删除目录
先进行遍历 这里我们选择 深度遍历 传入一个 文件的 file 对象 就会 打印出 该文件的所有内容
我们看看是否可行 能否找到 所有的内容

运行结果如下

如果可行
我们加入 删除操作

最终结果如下
文件夹已经被删除 所以最终返回false

![]()
import java.io.File;
import java.io.IOException;
public class Test2 {
public static void main(String[] args) throws IOException {
File file=new File ("D:\\iKun");
boolean a= file.delete ();
System.out.println (a);
traversal (file);
}
public static void traversal(File dir) throws IOException {
File[] files=dir.listFiles ();
//查看这个目录下的所有孩子(非子孙)
for (File file : files) {
if(file.isDirectory ()){
System.out.println (file.getCanonicalPath ()+"\\");
traversal (file);
file.delete ();
}else{
System.out.println (file.getCanonicalPath ());
//绝对路径 不含有"." ".."
file.delete ();
}
}
}
}
这篇博客介绍了如何在Java中删除非空目录。通过遍历目录下所有内容并逐个删除,最后删除目录本身,实现了非空目录的彻底删除。文中提供了深度遍历文件夹的代码示例,并展示了运行结果,最终成功删除了指定的非空文件夹。
2万+

被折叠的 条评论
为什么被折叠?



