gpt4 book ai didi

java - 如何用Java读取XML DOM对象中的特定节点?

转载 作者:行者123 更新时间:2023-12-02 09:40:34 25 4
gpt4 key购买 nike

我只想读取Dom对象中的特定节点“MessageEvent”,其中doc是已经生成的Dom对象。有任何想法吗?谢谢。

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = factory.newDocumentBuilder();
doc = dBuilder.parse(xmlFile);

doc.getDocumentElement().normalize();

NodeList nList = doc.getElementsByTagName("MessageEvent");

这是 XML:

<MessageEvent>
<Message.Event.MaximumSeverity.Code>Information</Message.Event.MaximumSeverity.Code>
<MessageEventItems>
<MessageEventItem>
<Message.Event.Item.Error.Code>OK</Message.Event.Item.Error.Code>
<Message.Event.Item.Severity.Code>Information</Message.Event.Item.Severity.Code>
<Message.Event.Item.Short.Description>sucessfully</Message.Event.Item.Short.Description>
</MessageEventItem>
</MessageEventItems>

最佳答案

我已经对此进行了测试:

<?xml version="1.0" encoding="UTF-8"?>
<MessageEvent>
<Message.Event.MaximumSeverity.Code>Information</Message.Event.MaximumSeverity.Code>
<MessageEventItems>
<MessageEventItem>
<Message.Event.Item.Error.Code>OK</Message.Event.Item.Error.Code>
<Message.Event.Item.Severity.Code>Information</Message.Event.Item.Severity.Code>
<Message.Event.Item.Short.Description>sucessfully</Message.Event.Item.Short.Description>
</MessageEventItem>
</MessageEventItems>
</MessageEvent>

我通过代码尝试过的内容:

DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = factory.newDocumentBuilder();
Document doc = dBuilder.parse("D:/test.xml");
doc.getDocumentElement().normalize();
Element element = doc.getDocumentElement();
System.out.println(element); // picks up the root element

我得到的输出是这样的:

[MessageEvent: null]

希望这对您有帮助。 :)

关于java - 如何用Java读取XML DOM对象中的特定节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57104562/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com