Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 删除目录时显示问题_Java_Android - Fatal编程技术网

Java 删除目录时显示问题

Java 删除目录时显示问题,java,android,Java,Android,可能重复: 在我的应用程序中,我使用内部存储(即文件)保存了所有数据。因此,首先使用ContextWrapper cw=newcontextwrapper(getApplicationContext())类i获取的目录路径为m_AllPageDirectoryPath=cw.getDir(“AllPageFolder”,Context.MODE_PRIVATE)在这个目录路径中,我保存了一些文件,如Page01、page02、Page03等等 同样在Page01内部,我保存了一些文件,比如im

可能重复:

在我的应用程序中,我使用内部存储(即文件)保存了所有数据。因此,首先使用
ContextWrapper cw=newcontextwrapper(getApplicationContext())类i获取的目录路径为
m_AllPageDirectoryPath=cw.getDir(“AllPageFolder”,Context.MODE_PRIVATE)在这个目录路径中,我保存了一些文件,如Page01、page02、Page03等等

同样在Page01内部,我保存了一些文件,比如image01,image02…使用相同的概念
m_PageDirectoryPath=cw.getDir(“Page01”,Context.MODE_PRIVATE)
现在删除m_AllPageDirectoryPath时,我想删除与之关联的所有文件。我试着使用这个代码,但不起作用

File file = new File(m_AllPageDirectoryPath.getPath()); 
file.delete();

只有当目录为空时,代码才起作用

如果目录包含文件和子目录,则必须递归删除所有文件

试试这个代码

// Deletes all files and subdirectories under dir.
// Returns true if all deletions were successful.
// If a deletion fails, the method stops attempting to delete and returns false.
public static boolean deleteDir(File dir) {
    if (dir.isDirectory()) {
        String[] children = dir.list();
        for (int i=0; i<children.length; i++) {
            boolean success = deleteDir(new File(dir, children[i]));
            if (!success) {
                return false;
            }
        }
    }

    // The directory is now empty so delete it
    return dir.delete();
}
//删除目录下的所有文件和子目录。
//如果所有删除都成功,则返回true。
//如果删除失败,该方法将停止尝试删除并返回false。
公共静态布尔deleteDir(文件目录){
if(dir.isDirectory()){
String[]children=dir.list();

对于(int i=0;i+1)来说,首先删除所有文件是一个很好的概念,删除dirMy目录文件夹的结构如下。main directory->haveMoreTheOneSubdirectory->HaveMoreThenOneFile..所以我想删除特定的子目录及其文件。上面的代码删除您将在参数中给出的目录。