📜  Andorid 使用DOM解析XML

📅  最后修改于: 2020-10-10 01:17:43             🧑  作者: Mango

使用DOM解析器进行Android XML解析

我们也可以通过dom解析器解析xml文档。它可用于创建和解析xml文件。

DOM解析器相对于SAX的优势

它可以用于创建和解析xml文件,但是SAX解析器只能用于解析xml文件。

DOM解析器相对于SAX的劣势

它比SAX消耗更多的内存。

android DOM Xml解析示例

activity_main.xml

从面板上拖动一个textview。现在,activity_main.xml文件将如下所示:



    


xml文件

在项目的资产目录内创建一个名为file.xml的xml文件。





Sachin Kumar
50000


Rahul Kumar
60000


John Mike
70000



活动课

让我们编写代码以使用dom解析器解析xml。

package com.javatpoint.domxmlparsing;
import java.io.InputStream;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class MainActivity extends Activity {
TextView tv1;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv1=(TextView)findViewById(R.id.textView1);
try {
InputStream is = getAssets().open("file.xml");

DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(is);

Element element=doc.getDocumentElement();
element.normalize();

NodeList nList = doc.getElementsByTagName("employee");
for (int i=0; i

输出: