Android包含XML文件=放置它们的位置

时间:2012-08-04 23:17:53

标签: android xml resources

我正在开发一个需要引用许多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");

这找不到资源文件,我哪里错了?

1 个答案:

答案 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()方法将文件名作为参数传递。