gpt4 book ai didi

java - 递归删除目录

转载 作者:行者123 更新时间:2023-12-01 07:59:52 25 4
gpt4 key购买 nike

我正在尝试递归删除目录。但我有一些问题。因此,我在“测试”文件夹中创建一些目录,如图所示。但在第三个文件夹中它抛出异常 java.lang.NullPointerException。

这是图片和一些代码:

public static void RecursiveRm (String myFile)
{
File fl = new File(myFile);
String [] temp = fl.list();
if(temp.length > 0){
for (int i = 0; i < temp.length; ++i){
myFile = myFile + "/" + temp[i];
RecursiveRm(myFile);
}
}
else
fl.delete();
}

这就是它的工作原理

That's how it works

最佳答案

您一开始就不应该这样做。

myFile = myFile + "/" + temp[i];

这意味着如果您有一个包含 a bc 的目录,路径将变为 /a/b/c 您应该避免更改 myFile

试试这个。

for(String file: new File(myFile).list()) {
recursiveRm(myFile + "/" + file);
}
fl.delete();

如果目录不存在,您很可能会收到 NullPointerException,因为 File.list() 返回 null

关于java - 递归删除目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26127834/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com