1.首先我们可以在res包路径下创建一个raw包,然后在raw下创建一个email.xml 文件,并修改其内容如下:
<?xml version="1.0" encoding="utf-8"?>
<email>
<from>123@163.com</from>
<to>456@gmail.com</to>
<date>2016/4/5</date>
<title>xml parse</title>
<content>Hello World!</content>
</email>
2. 用java代码对上述xml文件进行简单解析,并将解析的信息通过TextView显示出来:
private void parseXml() {
try {
// --- 获取xml文件到输入流变量
InputStream stream = getResources().openRawResource(R.raw.email);
stream.reset();
// --- 开始解析 xml 文件
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document doc = builder.parse(stream);
Node root = doc.getFirstChild();
NodeList nodeList = root.getChildNodes();
String info = "";
// --- 循环读取每个子节点的信息
for (int i = 0; i < nodeList.getLength(); i++) {
Node item = nodeList.item(i);
info += item.getTextContent() + "\n";
}
// --- 输出解析结果
TextView tvInfo = (TextView)findViewById(R.id.tvInfo);
tvInfo.setText(info);
}
catch (Exception e) {
e.printStackTrace();
}
}
最终效果如下:
以上就是对xml文档进行的简单解析,另外我们还可以为每个节点加入id及其他各种属性等。我们可以通过
getElementsByTagName();
getAttributes();
getChildNodes();
replaceChild(Node newChild, Node oldChild);
removeChild(Node oldChild);
等方法进行读写和修改。