以下是我寫入數據到該文件時可調用的寫入方法的代碼片段。嘗試創建和寫入外部存儲器中的文本文件時收到異常(Android Studio)
公共無效寫入(字符串文件,字符串數據) {
File rootsd= Environment.getExternalStorageDirectory();
File datafolder= new File(rootsd.getAbsolutePath()+"/Data");
if(!datafolder.isDirectory())
{
try
{
datafolder.mkdir();
}
catch (Exception e)
{
Log.e("Error","Directory was not created");
}
}
File datafile= new File(datafolder,file);
try {
if (!datafile.exists())
{
datafile.createNewFile();
}
writer = new BufferedWriter(new FileWriter(datafile));
writer.write(data);
writer.close();
}
catch (Exception e) {
Log.e("Error", "File not found");
}
}
出於某種原因,這是自動去右轉入捕獲異常並返回文件未找到,我不太清楚是什麼問題是,我似乎無法找到一個解決方案在線。感謝所有幫助,謝謝!
編輯:logcat的例外
Caused by: java.io.IOException: open failed: ENOENT (No such file or directory)
at java.io.File.createNewFile(File.java:941)
at uwpsych.ocdstopwatch.Q1.Write(Q1.java:157)
at uwpsych.ocdstopwatch.Q1.SaveData(Q1.java:142)
在java.lang.reflect.Method.invoke(本機方法)
您是否在Manifest中定義了權限? –
我在清單中有寫入權限,我是否也需要讀取權限? –
不需要讀取權限。 –