XML DOM解析详解
学会使用DOM接口解析XML文档,访问和操作节点树。 · 难度:入门 · +15XP
DOM解析基础
DOM(Document Object Model)将XML文档解析为树形结构,每个节点代表一个元素、属性或文本。DOM解析器将整个文档加载到内存中,适合小规模文档的随机访问和修改。
核心接口
| 接口 | 方法/属性 | 说明 |
|---|---|---|
| Document | getElementById() | 通过ID获取元素 |
| Node | childNodes | 子节点列表 |
| Element | getAttribute() | 获取属性值 |
示例:解析图书数据
import javax.xml.parsers.*;
import org.w3c.dom.*;
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse("books.xml");
NodeList books = doc.getElementsByTagName("book");
for (int i = 0; i < books.getLength(); i++) {
Element book = (Element) books.item(i);
String title = book.getElementsByTagName("title").item(0).getTextContent();
System.out.println("书名:" + title);
}
练习提示
修改上面的代码,输出所有书籍的作者和出版年份。注意处理可能缺失的节点。