【Android】XML文件的解析

 

1.首先我们可以在res包路径下创建一个raw包,然后在raw下创建一个email.xml 文件,并修改其内容如下:

1 <?xml version="1.0" encoding="utf-8"?>
2 <email>
3     <from>123@163.com</from>
4     <to>456@gmail.com</to>
5     <date>2016/4/5</date>
6     <title>xml parse</title>
7     <content>Hello World!</content>
8 </email>

  

2. 用java代码对上述xml文件进行简单解析,并将解析的信息通过TextView显示出来:

 1 private void parseXml() {
 2     try {
 3         // --- 获取xml文件到输入流变量
 4         InputStream stream = getResources().openRawResource(R.raw.email);
 5         stream.reset();
 6         // --- 开始解析 xml 文件
 7         DocumentBuilder builder  = DocumentBuilderFactory.newInstance().newDocumentBuilder();
 8         Document        doc      = builder.parse(stream);
 9         Node            root     = doc.getFirstChild();
10         NodeList        nodeList = root.getChildNodes();
11         String          info     = "";
12         // --- 循环读取每个子节点的信息
13         for (int i = 0; i < nodeList.getLength(); i++) {
14             Node item = nodeList.item(i);
15             info += item.getTextContent() + "\n";
16         }
17         // --- 输出解析结果
18         TextView tvInfo = (TextView)findViewById(R.id.tvInfo);
19         tvInfo.setText(info);
20     }
21     catch (Exception e) {
22         e.printStackTrace();
23     }
24 }

 

  最终效果如下:

 

       以上就是对xml文档进行的简单解析,另外我们还可以为每个节点加入id及其他各种属性等。我们可以通过

      getElementsByTagName();

      getAttributes();

      getChildNodes();

      replaceChild(Node newChild, Node oldChild);

      removeChild(Node oldChild);

  等方法进行读写和修改。

 

posted @ 2016-04-05 22:12  (•̀ω•́)y  阅读(249)  评论(0编辑  收藏  举报