我有一个要求,需要使用嵌套结构编写文件和文件夹Context.MODE_PRIVATE
.
我发现我们可以使用创建文件openFileOutput(FILENAME, Context.MODE_PRIVATE);
并能够使用此方法创建文件。但后来我发现使用此方法我无法创建嵌套文件结构,即
openFileOutput("foo/myText.txt", Context.MODE_PRIVATE);
抛出异常:
java.lang.IllegalArgumentException: File foo/myText.txt contains a path separator
可能是因为它只期望一个fileName & not a filepath
还有文档说
打开与此 Context 的应用程序包关联的私有文件
用于写作。
然后我发现getFilesDir()
返回 Context 的应用程序包,我可以在其中使用普通的 Java 文件 I/O 创建文件。但我不知道创建它的权限,即是否是MODE_APPEND
,MODE_PRIVATE
,MODE_WORLD_READABLE
or MODE_WORLD_WRITEABLE
.
所以,我有以下问题:-
如何使用 MODE_PRIVATE 下的 openFileOutput() 方法创建嵌套文件结构(如果可能)?
如果 openFileOutput() 不适用于创建嵌套结构,那么使用是否安全getFilesDir()
和 Java 文件 I/O 组合是否满足我的要求?使用这种方式创建的文件有什么权限?
你需要创建foo
首先目录,然后在该目录中创建文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)