【问题标题】:Saving a json file to the Document directory in Android Studio将 json 文件保存到 Android Studio 中的 Document 目录
【发布时间】:2019-06-21 00:31:42
【问题描述】:

我目前正在尝试创建一个json文件,然后将其保存在Android Studio(3.3版)的Document目录中

我的问题是每次我尝试创建 FileOutputStream 时都会收到错误消息:

W/System.err: java.io.FileNotFoundException: /storage/emulated/0/Documents/LoanCalculationResults.json (Permission denied)

我如何创建我的 FileOutputStream:

FileOutputStream fos = new FileOutputStream(new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS), "LoanCalculationResults.json"));

我曾尝试使用openFileOutput,但由于它不接受路径分隔符,我无法将文件保存到文档目录。

我已在我的 AndroidManifest.xml 中包含 permission

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

我缺少一些东西,如果有人能够指出我正确的方向或链接到可以帮助我的资源,我将非常高兴!

【问题讨论】:

  • 已经看过很多次了,但是即使有了这个资源,我也无法找到将我的 .json 文件保存到文档目录的方法。每次使用他们展示的示例时,我都会收到我在问题中链接的错误。

标签: android json file android-studio fileoutputstream


【解决方案1】:

试试这个

 try {
            OutputStreamWriter outputStreamWriter = new OutputStreamWriter
                    (openFileOutput("Your file name"+ ".txt", Context.MODE_PRIVATE));

            outputStreamWriter.write("What you want to write inside the file");
            outputStreamWriter.close();

        } catch (IOException e) {
            Log.e("Exception", "File write failed: " + e.toString());
        }

【讨论】:

  • 这忽略了我的问题的核心,我想专门将文件保存到文档目录。我知道可以使用 openFileOutput 来保存文件,但是你不能指定在哪里!它总是以 files/ 结尾
猜你喜欢
  • 2013-07-28
  • 2012-09-10
  • 1970-01-01
  • 1970-01-01
  • 2016-09-04
  • 2020-04-21
  • 1970-01-01
  • 1970-01-01
  • 2012-06-20
相关资源
最近更新 更多