Java读取xml文件的方式------DOM方式(一)_属性值

DOM,Document Object Model,文档对象模型。 DOM是html和xml文档的编程接口规范,和平台、语言是无关的。 利用dom规范,能够实现dom 文档和xml之间的相互转换,遍历、操作相应dom文档的内容。 DOM规范的核心就是树模型。

2.XML的节点

一个XML文档中只有一个根节点-没有父节点的元素节点
元素节点-根节点和根节点中的所有标签都是元素节点
属性节点-<student id=“001”></student> id就是属性节点
文本节点-<name>zhangsan</name> zhangsan就是文本节点

注释节点-<!-- --> xml文档中的注释信息
3.DOM常用方法

Attr createAttribute(String name) 创建一个Attr对象设置属性名

setAttributeNode()       为Attr属性命名

Element createElement(String tagName)  创建一个Element对象

createTextNode(String data)               创建一个 Text 对象

getElementsByTagName(String tagname)      所有给定标签名字的标签 //返回的是一个list集合因为元素有重复的,通过item()来给出定位

getDocumentElement()                            代表这个DOM树的根节点的Element对象

getFirstChild()                                          返回第一个节点,否则返回 null。

getLastChild()                                          返回最后一个节点,否则返回 null。

getNodeName()                                        得到节点的名称

getNodeType()                                          得到节点的类型

getNodeValue()                                         得到节点的属性值

int getLength()                                          列表中的Node的数量

item(int index)                                             返回集合中的第 index 个项。如果 index 大于或等于此列表中的节点数,则返回 null

getTagName()                                                返回该节点的名称,节点名称就是对应的XML文件的标记名称

getAtrribute(String name)                            返回该节点中参数name指定的属性值,XML标记中对应的属性值

getNodeType()                                                得到节点的类型

getAttributeNode(String name)                      根据属性名得到Attr对象

4.Dom的使用

第一步 

建立一个解析器工厂   DocumentBuilderFactory dbf =     DocumentBuilderFactory.newInstance();

以利用这个工厂来获得一个具体的解析器对象。 DocumentBuilder builder=dbf.newDocumentBuilder();

利用DocumentBuilder的parse()方法接受一个XML文档名作为输入参数,返回一个Document对象。

Document doc=builder.parse(“books.xml");

Document对象代表了一个XML文档的树模型。

通过Node对象的getNodeValue()方法提取某个标签内的内容。 node.getElementsByTagName("book").item(0).getFirstChild().getNodeValue()

提取标签名字为book的第一个book节点的文本节点的值;

文本值也相当于一个节点