无法在Android外部存储上创建文件

我想创建一个.txt文件并将其存储在Android手机的外部存储上。 我将权限添加到Android Manifest中。 当我运行代码时,它不会给我任何错误,但永远不会创建该文件。 不确定我做错了什么。

public void createExternalStoragePrivateFile(String data) { // Create a path where we will place our private file on external // storage. File file = new File(myContext.getExternalFilesDir(null), "state.txt"); try { FileOutputStream os = null; OutputStreamWriter out = null; os = myContext.openFileOutput(data, Context.MODE_PRIVATE); out = new OutputStreamWriter(os); out.write(data); os.close(); if(hasExternalStoragePrivateFile()) { Log.w("ExternalStorageFileCreation", "File Created"); } else { Log.w("ExternalStorageFileCreation", "File Not Created"); } } catch (IOException e) { // Unable to create file, likely because external storage is // not currently mounted. Log.w("ExternalStorage", "Error writing " + file, e); } } 

 File file = new File(myContext.getExternalFilesDir(null), "state.txt"); try { FileOutputStream os = new FileOutputStream(file, true); OutputStreamWriter out = new OutputStreamWriter(os); out.write(data); out.close(); } 

你需要一个适当的权限:

   

我可以使用下面的代码在外部存储上创建文件:

 public void createExternalStoragePrivateFile(String data) { // Create a path where we will place our private file on external // storage. File file = new File(myContext.getExternalFilesDir(null), "state.txt"); try { FileOutputStream os = new FileOutputStream(file); OutputStreamWriter out = new OutputStreamWriter(os); out.write(data); out.close(); if(hasExternalStoragePrivateFile()) { Log.w("ExternalStorageFileCreation", "File Created"); } else { Log.w("ExternalStorageFileCreation", "File Not Created"); } } catch (IOException e) { // Unable to create file, likely because external storage is // not currently mounted. Log.w("ExternalStorage", "Error writing " + file, e); } }