利用Document读取和修改数据

时间:2022-04-17 23:29:58

           Document是Node的子接口,首先具有Node内提供的所有工能,但是提供的读取数据的方法,又具有自己特有的API。

(1)Element  getDocumentElement():获取文档根节点;实际上,该方法的应用等价于Node Document.getFirstChild(),只是返回值类型不同。不过,可以将返回的Node强制转换为Element类型。

(2)NodeList   getElementsByTagName(String name)。输入标签名称,以NodeList形式返回指定标签的元素,若无,则返回空集合;适用于文档中的所有元素,无需确定该元素的位置。

(3)Element createElement(String tagName)。创建指定标签名称的元素。由于Element是接口,接口不能实例化,如需要创建Element,只能通过此方法。

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class Test04 {

	public static void main(String[] args) throws Exception 
	{
		//创建一个DocumentBuliderFactory的对象
		DocumentBuilderFactory dbf=  DocumentBuilderFactory.newInstance() ;
		//创建一个DocumentBuilder对象
		DocumentBuilder db = dbf.newDocumentBuilder();
		//通过DocumentBuilder的Parse()方法加载books.xml到当前项目下
		Document doc= db.parse("books.xml");
		//获取所有书籍名称
		NodeList  list= doc.getElementsByTagName("name");
		for(int i=0;i<list.getLength();i++)
		{
			Node node = list.item(i);
			System.out.print(node.getTextContent());
		}
	}

}