【发布时间】:2016-07-22 03:11:04
【问题描述】:
public void write(View view)
{
String state;
File Dir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
if (!Dir.exists())
{
Dir.mkdir();
}
File file = new File(Dir,"nahk.txt");
Toast.makeText(getApplicationContext(),file.getAbsolutePath(), Toast.LENGTH_SHORT).show();
String Message = "5nahk";
try {
FileOutputStream FOS = new FileOutputStream(file);
FOS.write(Message.getBytes());
FOS.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
我在清单 xml 文件中添加了写入权限。当我按下按钮时会调用此方法。吐司说 txt 文件保存在我的内部存储的下载文件夹中(因为我的 LG G3 中没有 SD 卡)。我打开文件位置(在我的 LG G3 上使用 FileManager),该文件夹中没有“nahk.txt”。为什么我看不到文件?
【问题讨论】:
-
嘿,谢谢大家的回复。我想到了。我在 Marshmallow 上进行开发,除了清单文件中要求的权限外,它还要求您在使用外部存储之前询问用户的权限。简而言之,java代码需要对marshmallow的外部存储权限进行请求。如果有人需要帮助,我可以提供链接。