[英]Where should I choose to save text file in android?
我希望将数据导出为文本文件并将其保存到Android中的磁盘,因此我需要选择将文件保存到的文件夹。
我希望普通用户可以轻松找到该文件夹,并且该应用无需特殊权限即可创建该文件夹。
我已经阅读了一些文档,似乎有3种方法: Context.getFilesDir().getAbsolutePath()
, Environment.getExternalStorageDirectory().getAbsolutePath()
和Context.getExternalFilesDir(null)
。
您知道某些Android用户未安装SD卡,因此似乎排除了Environment.getExternalStorageDirectory().getAbsolutePath()
和Context.getExternalFilesDir(null)
。
我只选择Context.getFilesDir().getAbsolutePath()
吗? 或者,还有更好的方法? 谢谢!
顺便说一句,从文档Android-要将文本文件保存到哪里?
将其保存在内部电话存储中,此处没有用户和应用程序可以访问这些文件(除非电话已植根)。 但是这些文件将被删除,用户可以从设置->应用程序->选择清除数据。
如果我使用Context.getFilesDir()。getAbsolutePath(),似乎普通用户无法访问保存的文本文件,对吗?
如果您想要用户可以修改并可以访问的路径,请使用此选项
getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS).getAbsolutePath();
更多文档在这里 。
编辑:
这是在某些设备中使用万一出现错误的方法:
File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS);
String fname = "TEXT.txt";
File file = new File(path, fname);
if (!path.exists()) {
//noinspection ResultOfMethodCallIgnored
path.mkdir();
}
// YOUR CODE FOR COPY OR CREATE THE FILE TXT in PATH WITH THE VARIABLE file ABOVE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.