import org.w3c.dom.*;
import javax.xml.parsers.*;
import java.io.*;
public class XMLParserExample {
public static void main(String[] args) {
try {
// 创建一个DocumentBuilderFactory对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
// 创建一个DocumentBuilder对象
DocumentBuilder builder = factory.newDocumentBuilder();
// 解析XML文件并返回一个Document对象
Document document = builder.parse(new File("example.xml"));
// 获取文档的根元素
Element root = document.getDocumentElement();
System.out.println("Root element: " + root.getNodeName());
// 获取所有"employee"节点
NodeList nodeList = document.getElementsByTagName("employee");
for (int i = 0; i < nodeList.getLength(); i++) {
Node node = nodeList.item(i);
if (node.getNodeType() == Node.ELEMENT_NODE) {
Element element = (Element) node;
// 获取"employee"节点下的"name"和"role"子节点的文本内容
String name = element.getElementsByTagName("name").item(0).getTextContent();
String role = element.getElementsByTagName("role").item(0).getTextContent();
System.out.println("Name: " + name + ", Role: " + role);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
导入必要的包:
org.w3c.dom.*
:用于处理DOM(文档对象模型)。javax.xml.parsers.*
:用于解析XML文档。java.io.*
:用于处理文件输入输出。创建DocumentBuilderFactory和DocumentBuilder对象:
DocumentBuilderFactory
用于创建DocumentBuilder
实例,后者负责解析XML文件并生成DOM树。解析XML文件:
DocumentBuilder
的parse
方法解析XML文件,返回一个Document
对象,该对象表示整个XML文档的DOM树。获取根元素:
getDocumentElement
方法获取XML文档的根元素,并打印其名称。遍历特定节点:
getElementsByTagName
方法获取所有名为employee
的节点,并遍历这些节点。employee
节点,获取其子节点name
和role
的文本内容,并打印出来。异常处理:
try-catch
块捕获并处理可能发生的异常。下一篇:java取绝对值
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站