Java 无法从android手机的内部和外部存储器读取文件

Java 无法从android手机的内部和外部存储器读取文件,java,android,file,file-browser,Java,Android,File,File Browser,我想在我的android应用程序中集成文件浏览器功能。我可以使用以下代码片段访问手机的内部存储器: Path = new File(Environment.getExternalStorageDirectory().getAbsolutePath()); 但是我找不到读取sd卡以显示这些文件夹中文件的功能。请建议执行此操作的方法。要使用外部存储,您必须编辑清单文件: <manifest ...> <uses-permission android:name="andr

我想在我的android应用程序中集成文件浏览器功能。我可以使用以下代码片段访问手机的内部存储器:

 Path = new File(Environment.getExternalStorageDirectory().getAbsolutePath());

但是我找不到读取sd卡以显示这些文件夹中文件的功能。请建议执行此操作的方法。

要使用外部存储,您必须编辑清单文件:

<manifest ...>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    ...
</manifest>
将此添加到清单后,您可以按如下方式逐行读取文件:

File sdcard = Environment.getExternalStorageDirectory();
File file = new File(sdcard,"file.txt");
while ((line = br.readLine()) != null) {
        //whatever you want
    }

您使用的是哪个操作系统版本的android。上面的代码用于读取外部内存。和context.getFilesDir.getAbsolutePath;此方法用于读取Android 4.4+上没有任意访问权限的内部内存。我希望我的应用程序在所有Android设备上运行>4。是否没有方法从Android设备的SD卡读取文件>4但如果没有任何方法访问SD卡路径,则文件管理器如何显示文件在外部sd卡内展示。如有任何帮助,将不胜感激
File sdcard = Environment.getExternalStorageDirectory();
File file = new File(sdcard,"file.txt");
while ((line = br.readLine()) != null) {
        //whatever you want
    }