如何访问内部存储的根目录中的文件?

时间:2018-06-12 07:02:00

标签: android

我的设备没有SD卡,但我可以访问"内部存储"在Windows资源管理器中,有一个" tmp.txt"。

enter image description here

txt文件是通过Windows资源管理器粘贴的,现在我想读取这个文件。我的代码是:

    File sdcard = Environment.getExternalStorageDirectory();
    File file = new File(sdcard,"tmp.txt");

    StringBuilder text = new StringBuilder();
    try {
        InputStream in = new FileInputStream(file);
        ...
    }
    catch (IOException e) {
    }

但是它不起作用,它在new FileInputStream(file);之后捕获异常,调试信息记录文件位置实际上是"/storage/emulated/0/tmp.txt",因此它无法找到该文件。 然后我尝试使用以下命令将文件放在下载目录中

File fileDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
File file = new File(fileDir, "tmp.txt");

错误日志:exception e:

它也不起作用,基本上它们也是同样的问题。我可以访问此目录中的文件吗?

1 个答案:

答案 0 :(得分:0)

阅读本文:developer.android.com/guide/topics/data/data-storage您无权读取存储空间,您提供的权限适用于位置服务。