温馨提示×

java怎么解析xml获取标签属性值

小亿
190
2023-09-29 01:36:45
栏目: 编程语言

在Java中,可以使用DOM(Document Object Model)解析XML并获取标签的属性值。以下是一个简单的示例代码:

import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
import org.w3c.dom.Element;
public class XMLParser {
public static void main(String[] args) {
try {
// 创建一个DocumentBuilderFactory对象
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
// 创建一个DocumentBuilder对象
DocumentBuilder builder = factory.newDocumentBuilder();
// 使用DocumentBuilder对象的parse()方法解析XML文件,返回一个Document对象
Document document = builder.parse("example.xml");
// 获取XML文件的根元素
Element rootElement = document.getDocumentElement();
// 获取所有名为"book"的子元素
NodeList bookNodes = rootElement.getElementsByTagName("book");
// 遍历所有"book"元素
for (int i = 0; i < bookNodes.getLength(); i++) {
// 获取当前的"book"元素
Element bookElement = (Element) bookNodes.item(i);
// 获取"book"元素的属性值
String id = bookElement.getAttribute("id");
String title = bookElement.getAttribute("title");
String author = bookElement.getAttribute("author");
// 打印属性值
System.out.println("Book " + (i+1) + " - id: " + id);
System.out.println("Book " + (i+1) + " - title: " + title);
System.out.println("Book " + (i+1) + " - author: " + author);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

上述代码假设存在一个名为"example.xml"的XML文件,其中包含多个名为"book"的元素,每个元素都有"id"、"title"和"author"属性。代码通过DOM解析XML文件,并获取每个"book"元素的属性值。

0