2014-09-30 65 views
0

我正在开发Android应用程序。我会使用导航抽屉作为布局。如何解析Android中的XML文件(使用导航抽屉作为布局)

其实我从Eclipse IDE自动生成的代码中取得部分内容。问题是我无法正确读取我的XML文件,因为编译器一直说我由于路径不正确而无法访问文件(无法打开file:/// MYPATH)。

我把我的XML文件放在“res”子目录的xml目录中。

如何从我的实用程序类访问此目录,该目录未链接到我的项目的任何活动类?

在Android应用程序中解析和打印XML文件的最佳方式是什么?

是否有专门的API来做到这一点?

(从我的XML文件中取出的样品:

<?xml version="1.0" encoding="UTF-8"?> 



<data> 

     <zname id = "breast" name="Breast"> 

    <cancer cancer_name=""> 

     <t_parameter t_level="" t_desc=""> 
     </t_parameter> 

     <n_parameter n_level="" n_desc=""> 
     </n_parameter> 

     <m_parameter m_level="" m_desc=""> 
     </m_parameter>  

     <stage stage_level="" stage_desc=""> 
     </stage> 

     <guideline url=""> 
     </guideline> 

    </cancer> 

     </zname> 

</data> 

+0

将上下文传递给实用程序。 。ctx.getResources()的getXML(R.xml.urxml); – 2014-09-30 08:18:04

回答

0

创建的InputStream:

InputStream is = context.getResources().openRawResource(R.xml.data); 

一旦你的输入流(上图),你可以将它传递给DocumentBuilder实例:

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
DocumentBuilder builder = factory.newDocumentBuilder(); 
Document dom = builder.parse(is); 
Element root = dom.getDocumentElement(); 
NodeList items = root.getElementsByTagName("zname");