Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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
Android 如何读取设备中的所有文件和目录?_Android_File_Permissions_Directory - Fatal编程技术网

Android 如何读取设备中的所有文件和目录?

Android 如何读取设备中的所有文件和目录?,android,file,permissions,directory,Android,File,Permissions,Directory,是否有可能开发一个Java应用程序,可以读取设备内存中的所有文件和目录?出于安全考虑,我认为这是不可能的,但我需要另一种意见。你可以这样做。 也许对你有帮助 我将采取的路径是设备存储 如果您使用的是android studio或类似的vise工具,请将调试点放在旁边 File[] dir = new File(path).listFiles(); 您将看到文件/文件夹层次结构 path = Environment.getExternalStorageDirectory().toString(

是否有可能开发一个Java应用程序,可以读取设备内存中的所有文件和目录?出于安全考虑,我认为这是不可能的,但我需要另一种意见。

你可以这样做。 也许对你有帮助

我将采取的路径是设备存储

如果您使用的是android studio或类似的vise工具,请将调试点放在旁边

 File[] dir = new File(path).listFiles();
您将看到文件/文件夹层次结构

path = Environment.getExternalStorageDirectory().toString()

public static ArrayList<String> listFoldersAndFilesFromSDCard(String path) {
        ArrayList<String> arrayListFolders = new ArrayList<String>();

        try {
            File[] dir = new File(path).listFiles();
            // here dir will give you list of folder/file in hierarchy 

            if (null != dir && dir.length > 0) {
                for (int i = 0; i < dir.length; i++) {
                    if (dir[i].isDirectory()) {
                        arrayListFolders.add(new File(dir[i].toString()).getName());
                        // Here you can call recursively this function for file/folder hierarchy 
                    } else{
                            // do what ever you want with files
                    }
                }
            }
        } catch (Exception e) {
            e.printStackTrace();

        }
        return arrayListFolders;
    }

你的意思是文件和目录列表?是的,设备中所有文件和目录的列表。我认为这是不可能的,但我需要另一种意见。非常感谢。