我正在开发一个需要引用许多XML文件中的数据的应用程序。应用程序需要很多(~40个)XML文件。
该文件的名称类似于“AbnormalFlags-v1.0.xml”,我目前将它们放在
中RES /原料/ V2 / AbnormalFlags-v1.0.xml RES /生/ V2 / ActualDeliveryPlace-v1.0.xml res / raw / v2 / AddressType-v1.0.xml ......
一些问题
因为我必须动态确定要使用的文件,所以我使用:
xmlFile = getApplicationContext().getResources().getIdentifier(xmlFileId,"raw","com.apps4health.refpack");
这找不到资源文件,我哪里错了?
答案 0 :(得分:0)
鉴于文件名的格式,我建议您将它们保存在assets
文件夹中。在assets
文件夹中创建一个名为res
的文件夹,并将XML文件放在那里。
以下代码显示了如何在assets
目录中打开文件:
InputStream is = null;
try {
AssetManager am = getApplicationContext().getAssets();
is = am.open("AbnormalFlags-v1.0.xml");
// Process the XML file from "is"...
}catch( IOException e ) {
// Handle exception
}
AssetManager负责打开保存在res/assets
文件夹中的文件。您只需调用open()
方法将文件名作为参数传递。