所以我想在android上保存一些外部存储数据。我看了api在哪里说getExternalStoragePublicDirectory(String type)
“如果需要,此方法将创建适当的目录。”
这些是默认目录:音乐,播客,铃声,闹钟,通知,图片,电影,下载。所以我的问题是:
答案 0 :(得分:7)
您可以执行此类操作,获取您的应用程序目录
String pathToExternalStorage = Environment.getExternalStorageDirectory().toString();
File appDirectory = new File(pathToExternalStorage + "/" + "AppName");
// have the object build the directory structure, if needed.
appDirectory.mkdirs();
现在,这会在外部存储上创建一个自定义目录,如android文档所说..
如果要保存不是特定于应用程序的文件,并且在卸载应用程序时不应删除这些文件,请将它们保存到外部存储器上的某个公共目录中。这些目录位于外部存储的根目录,例如Music /,Pictures /,Ringtones /等。
编辑:
使用Context.getDir(String name,int mode)方法创建或访问内部存储中的目录。从文档引用:
检索,根据需要创建应用程序所在的新目录 可以放置自己的自定义数据文件。您可以使用返回的文件 用于创建和访问此目录中的文件的对象。请注意文件 通过File对象创建的只能由您自己访问 应用;你只能设置整个目录的模式,而不是 个别档案。
示例:
File mydir = context.getDir("mydir", Context.MODE_PRIVATE); //Creating an internal dir, set it to private so its only visible to our application;
答案 1 :(得分:6)
您可以使用coder_For_Life22关于创建文件夹的答案,然后为了让用户“更加隐身”,您可以执行以下操作: