博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用递归原理根据文件夹路径,删除文件夹
阅读量:4305 次
发布时间:2019-06-06

本文共 987 字,大约阅读时间需要 3 分钟。

在实际开发中往往会有删除某个目录的需求,而如果直接删除目录程序会报错,正确的删除方式应该是先删除该目录里的所有文件,再删除该目录。

本篇博文通过递归的方式将整个目录以及其中的文件夹全部删除,具体实例如以下代码所示:

package com.sjk.sheng;import java.io.File;public class Example {    public static void main(String[] args) {        //创建一个代表目录的file对象        File file = new File("F://sjk.txt");        //调用deleteDir删除方法        deleteDir(file);    }        public static void deleteDir(File dir) {        //判断传入的File对象是否存在        if(dir.exists()) {            //得到File数组            File[] files = dir.listFiles();            //遍历所有的子目录和文件            for(File file : files) {                if(file.isDirectory()) {                    //如果是目录,递归调用deleteDir()                    deleteDir(file);                } else {                    //如果是文件,直接删除                    file.delete();                }            }            //删除完一个目录里的所有文件后,就删除这个目录            dir.delete();        }    }}

需要注意是,在java删除目录是从虚拟机直接删除而不走回收站,文件将无法恢复,因此在进行删除操作的时需谨慎!

转载于:https://www.cnblogs.com/sheng-sjk/p/7620562.html

你可能感兴趣的文章
前端“黑话”polyfill
查看>>
wifi-mac
查看>>
linux 下运行 tomcat
查看>>
RocketMQ 使用及常见问题
查看>>
UVA10785 The Mad Numerologist
查看>>
var result = ![] == []; console.log(result); // 结果是?为什么?
查看>>
高效率Oracle SQL语句
查看>>
Maven deploy部署jar到远程私服仓库
查看>>
2/19 福建四校联考
查看>>
abap 中modify 的使用
查看>>
tomcat调优方案Maximum number of threads (200) created for connector with address null and port 8091...
查看>>
java类的加载机制
查看>>
MDK linker和debug的设置以及在RAM中调试
查看>>
CocosCreator2.1.0渲染流程与shader
查看>>
制作新网络框架快速自动生成消息结构体的编辑器
查看>>
[转]Device Context 设备环境 设备上下文 理解
查看>>
事务的传播性和隔离级别
查看>>
2018.3.24 struct
查看>>
Linux系统删掉多个文件
查看>>
【随笔】Win7下GVIM的安装与配置
查看>>