【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);
等方法进行读写和修改。