开发者社区> 小新的蜡笔> 正文

Java删除文件及其子文件、文件夹

简介: 版权声明:欢迎评论和转载,转载请注明来源。 https://blog.csdn.net/zy332719794/article/details/80164205 Java的库中没有提供直接的删除文件夹及其子文件的方法,需要自己写,下面提供两种删除方式。
+关注继续查看
版权声明:欢迎评论和转载,转载请注明来源。 https://blog.csdn.net/zy332719794/article/details/80164205

Java的库中没有提供直接的删除文件夹及其子文件的方法,需要自己写,下面提供两种删除方式。

/**
 * 删除文件夹及其子文件(栈方式)
 **/
public static boolean deleteDirectory(File dir) {
    Stack<File> stackFiles = new Stack<File>();
    stackFiles.push(dir);
    
    while (stackFiles.size() > 0) {
        File currentFile = stackFiles.peek();
        File[] subFiles = currentFile.listFiles(); 
        
        for (int i = 0; i < subFiles.length; i++) {
            if (subFiles[i].isFile()) {
                if (!subFiles[i].delete()) {
                    return false;
                }
            } else {
                stackFiles.push(subFiles[i]);
            }
        }
        
        if (currentFile == stackFiles.peek()) {
            if (!currentFile.delete()) {
                return false;
            }
            stackFiles.pop();
        }
    }
    
    return true;
}
/**
 * 删除文件夹及其子文件(递归方式)
 **/
public static boolean deleteDirectory(File dir) {
	if (dir.isDirectory()) {
        File[] subFiles = dir.listFiles();
		
        for (int i = 0; i < subFiles.length; i++) {
            boolean success = deleteDirectory(subFiles[i]);
            if (!success) {
                return false;
            }
        }
    }
        
    return dir.delete();
}


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Docsify 初始化文件夹
Docsify 初始化文件夹
135 0
怎么用javascript判断一个文件是否存在?
2008-09-09 请问怎么用javascript判断一个文件是否存在?     &nbsp;&nbsp; var fso, filespec='c:\\a.txt'; &nbsp;&nbsp; fso = new ActiveXObject("Scripting.
519 0
xcode8 寻找symbolicatecrash文件
xcode8中,symbolicatecrash文件的位置换了。 I found it at... /Applications/Xcode.app/Contents/SharedFrameworks/DVTFoundation.
697 0
查找某文件夹下所有子文件夹内的py文件
import globimport os fp = '/Users/../Desktop'pylist = []def get_py(fp): filelist = glob.glob(os.path.
1275 0
java:利用xpath删除xml中的空节点
原始xml内容: 1 2 3 b1 4 5 123 6 7 8 9 10 11 可用下面的代码去掉 、这二个空节点 (注 中间有一个空格,不算空节点) 1 @Test...
1074 0
WordPress安全漏洞:从任意文件删除到任意代码执行
  WordPress安全漏洞:从任意文件删除到任意代码执行   WordPress是网络上最受欢迎的CMS系统。据w3tech统计,约有30%的网站运行了该系统。该系统的应用是如此广泛,难免会成为网络犯罪分子攻击目标。
408 0
+关注
小新的蜡笔
专业从事地理信息系统(GIS)技术工作7~8年。具有丰富的GIS架构、地图展示方面的经验。喜欢探索以及与小伙伴们探讨、分享技术。
134
文章
1
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载