首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FilesDir()上的安卓文件权限问题

FilesDir()上的安卓文件权限问题
EN

Stack Overflow用户
提问于 2020-07-08 07:15:59
回答 1查看 448关注 0票数 0

我需要在我的应用程序中使用文件。如果我将文件上传到Data/Data/APP/files,那么它将被添加-rw-rw-rw权限,然后我可以在我的应用程序中使用这些权限。如果我以编程方式将文件写入getfilesDir()完全相同的目录,我可以在同一目录中看到两个完全相同的文件,但是以编程方式保存的文件具有权限-rw-然后我无法使用getFilesDir()访问我的应用程序中的文件。以下是文件的保存方式:

代码语言:javascript
复制
    public void writeFileOnInternalStorage(Context mcoContext,String sFileName, String sBody){
        File file = new File(getApplicationContext().getFilesDir(), "");
        if(!file.exists()){
            file.mkdir();
        }

        try{
            File gpxfile = new File(file, sFileName);
            FileWriter writer = new FileWriter(gpxfile);
            writer.append(sBody);
            writer.flush();
            writer.close();

        }catch (Exception e){
            e.printStackTrace();

        }
    }

如何获得使用该文件的正确权限。这可能不是权限问题,也许是我保存文件的方式吧?它是一个.graphml扩展文件。

EN

回答 1

Stack Overflow用户

发布于 2020-07-08 10:58:05

你说不能访问你的文件是什么意思?

看看这个文档(https://developer.android.com/training/data-storage),你不需要访问(读写)应用程序特定目录中的文件的权限。

编辑:

我假设你已经把文件存储到磁盘上了。

请注意,在App-Specific Directory中读写文件不需要权限。你可以使用这个简单的代码来阅读它。

代码语言:javascript
复制
public File readFile(Context context, String fileName) {
    File file = new File(context.getFilesDir(), fileName);
    // do other stuff, like checking if the file exist, etc.
    return file;
}

不管它是什么文件扩展名,只要文件存在,你就会得到它。

其实已经有很多关于这个话题的文章了,请大家看一看,以便更好地理解这个话题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62785236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档