我正在尝试创建txt文件并在android中的sdcard上写入。我得到"目录未创建"错误。 path.mkdirs()
应该创建所需的目录,不应该吗?我在<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
中有AndroidManifest.xml
,我已为应用启用了存储权限。
Android版本:7.0
public void addData(View v) {
wordList.add(inAddWord.getText().toString());
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS);
File file = new File(path, "wordDatabase.txt");
try {
if(!(path.exists() && path.isDirectory())) {
while (!path.mkdir()) {
Log.e("Path", "Directory not created");
}
}
OutputStream os = new FileOutputStream(file);
os.write((inAddWord.getText().toString() + "\n").getBytes());
os.close();
} catch (IOException e) {
e.printStackTrace();
Log.w("ExternalStorage", "Error writing " + file, e);
}
}
答案 0 :(得分:0)
在Android 6+上,您应添加代码以要求用户确认您在清单中请求的权限。
Google用于运行时权限。