【问题标题】:How to find all read Only Storage in Android devices?如何在 Android 设备中找到所有只读存储?
【发布时间】:2015-07-07 07:29:49
【问题描述】:

我为我糟糕的英语语法道歉。

我想知道android设备是否在同一设备中同时具有只读和读/写存储?

如果是,如何获取只读存储目录。

String path = Environment.getExternalStorageDirectory().toString();

使用此代码可以检索主存储设备的路径。

其实我想做的,获取内部和外部存储的所有目录,并检查它们是只准备好还是分别读/写..

是否可以找到所有目录并检查是否可写?

【问题讨论】:

    标签: android file-permissions android-permissions android-external-storage internal-storage


    【解决方案1】:

    如果 SD 卡是可读的,您可以通过简单的方式检索所有文件和文件夹:

    String sdPath = Environment.getExternalStorageDirectory().getAbsolutePath();
    

    然后轻松获取文件列表:

    File sdFile = new File(sdPath);
    File fileList[] = sdFile.listFiles();
    

    获取列表后,您可以检查文件是否可读、可写或两者兼而有之。此外,如果它是一个文件或目录,如果它是一个目录,请继续搜索该目录以查找可读/可写文件。小例子:

    for(int i=0;i<fileList.length;i++){
    
       File fileListFile = fileList[i];
       boolean isReadable = fileListFile.canRead();
       boolean isWritable = fileListFile.canWrite();
       boolean isDir = fileListFile.isDirectory();
    
    }
    

    这只是一个可以引导您走向正确方向的示例。如果您想列出可读/可写文件或目录,还有更多工作要做。

    【讨论】:

    • 感谢您的帮助。但它只返回 sdcard0 中的文件 .. 我怎样才能获得子文件夹中的所有文件
    • 如果我理解你的正确方式,使用 getFilesDir() 而不是 getExternalStorageDirectory()..
    猜你喜欢
    • 1970-01-01
    • 2022-11-04
    • 1970-01-01
    • 1970-01-01
    • 2018-07-02
    • 1970-01-01
    • 2023-01-03
    • 2017-02-12
    • 1970-01-01
    相关资源
    最近更新 更多