對不起,曖昧的標題,但我做了以下寫一個簡單的字符串到一個文件:無法寫入SD卡 - canWrite是返回false
try {
File root = Environment.getExternalStorageDirectory();
if (root.canWrite()){
System.out.println("Can write.");
File def_file = new File(root, "default.txt");
FileWriter fw = new FileWriter(def_file);
BufferedWriter out = new BufferedWriter(fw);
String defbuf = "default";
out.write(defbuf);
out.flush();
out.close();
}
else
System.out.println("Can't write.");
}catch (IOException e) {
e.printStackTrace();
}
但root.canWrite()
似乎返回false每次。我沒有運行這個模擬器,我通過USB將我的android Eris插入到我的電腦中,並通過Eclipse運行我的手機上的應用程序。有沒有辦法讓我的應用程序權限,所以這不會發生?
此外,此代碼似乎創建文件default.txt
但如果它已經存在,它會忽略創建,只是打開它寫或我必須趕上類似FileAlreadyExists
(如果存在這樣的例外),如何然後打開它並寫入?
感謝任何幫助傢伙。
我unmout手機從電腦,但仍然出現錯誤,我在AndroidManifest.xml文件中添加了** WRITE_EXTERNAL_STORAGE **權限,這要感謝提前。 – twlkyao 2013-12-26 15:07:57