Java android项目中xml文件的存放位置?

Java android项目中xml文件的存放位置?,java,android,android-resources,android-file,android-assets,Java,Android,Android Resources,Android File,Android Assets,对于我的项目,我使用一个xml文件来获取信息。我知道这可以存储在资产文件夹或资源/原始文件夹中。我的问题是,我必须修改XMLDOM,并将其作为持久存储再次写回文件 我读到我不能写回资产文件夹中的文件。但不知道资源文件夹中的文件是什么 我在哪里可以保存此文件?将文件存储在SD卡中是唯一可能的选择吗 谢谢将文件存储在SD卡中是唯一可能的选择吗 是的,您还可以将文件存储在内存中 您没有修改apk文件的权限 将文件存储在SD卡中是唯一可能的选择吗 是的,您还可以将文件存储在内存中 您没有修改apk文件的

对于我的项目,我使用一个xml文件来获取信息。我知道这可以存储在资产文件夹或资源/原始文件夹中。我的问题是,我必须修改XMLDOM,并将其作为持久存储再次写回文件

我读到我不能写回资产文件夹中的文件。但不知道资源文件夹中的文件是什么

我在哪里可以保存此文件?将文件存储在SD卡中是唯一可能的选择吗


谢谢

将文件存储在SD卡中是唯一可能的选择吗

是的,您还可以将文件存储在内存中


您没有修改apk文件的权限

将文件存储在SD卡中是唯一可能的选择吗

是的,您还可以将文件存储在内存中


您没有修改apk文件的权限

我会将文件包含在res/raw中,然后在应用程序的文件目录中创建本地副本。在app init上,您可以检查它是否存在于外部存储器中,如果不存在,则从res/raw重新加载它

不必过多地深入细节,也许像这样:

File filesDir = context.getFilesDir();
File xml = new File(filesDir, YOUR_FILE_NAME);
if(xml.exists() {
    /* load data from filesDir */
} else {
    /* load data from res/raw and save to filesDir */
}

我会将文件包含在res/raw中,然后在应用程序的文件目录中创建一个本地副本。在app init上,您可以检查它是否存在于外部存储器中,如果不存在,则从res/raw重新加载它

不必过多地深入细节,也许像这样:

File filesDir = context.getFilesDir();
File xml = new File(filesDir, YOUR_FILE_NAME);
if(xml.exists() {
    /* load data from filesDir */
} else {
    /* load data from res/raw and save to filesDir */
}

首先将文件从资产文件夹保存到data/data/app_package_name/,然后从上面的路径访问xml文件。首先将文件从资产文件夹保存到data/data/app_package_name/,然后从上面的路径访问xml文件。