【发布时间】:2011-06-08 09:23:02
【问题描述】:
在我的应用程序中,我通过 File newxmlfile = new File(Environment.getExternalStorageDirectory() + "/Message.xml"); 将 XML 文件保存到用户的 SD 卡中
但并非所有用户的手机中都有 SD 卡,因此我的应用可能会崩溃。
我必须如何更改文件创建方法才能将文件保存到手机内存而不是 SD 卡?
另外,我必须如何更改文件的加载? (目前:new InputSource(new FileInputStream(Environment.getExternalStorageDirectory() + "/Message.xml")))
编辑:我不认为你的问题是正确的。我知道 Android Docs 的 Data-Storage 页面并且我已经阅读了它。我只想知道我应该如何调整它以匹配我当前保存和加载文件的方式。
【问题讨论】:
-
每台 Android 兼容设备都支持共享“外部存储”,您可以使用它来保存文件。这可以是可移动存储介质(例如 SD 卡)或内部(不可移动)存储。注意:不要被这里的“外部”这个词弄糊涂了。最好将此目录视为媒体/共享存储。它是一个在所有应用程序之间共享的文件系统(不强制执行权限)。传统上这是一张 SD 卡,但它也可以作为设备中的内置存储实现,与受保护的内部存储不同并且可以挂载作为计算机上的文件系统。