gpt4 book ai didi

java - 如何在java中从XML中获取节点和节点值

转载 作者:太空宇宙 更新时间:2023-11-04 08:39:42 24 4
gpt4 key购买 nike

我有一个 xml 试图解析和读取它,但不知道 xml 可能包含多少个节点?所以我想读取节点和节点值?

我如何得到同样的说法:

<company>
<personNam>John</personName>
<emailId>abc@test.com</emaiId>
<department>Products</department>
(may have additionaly nodes & values for same)
</company>

抱歉忘记使用 Dom 添加我的代码:-

Document document = getDocumentBuilder().parse(new ByteArrayInputStream(myXML.getBytes("UTF-8")));          
String xPathExp = "//company";
XPath xPath = getXPath();
NodeList nodeList = (NodeList)xPath.evaluate(xPathExp, document, XPathConstants.NODESET);
nodeListSize = nodeList.getLength();
System.out.println("#####nodeListSize"+nodeListSize);

for(int i=0;i<nodeListSize;i++){
element=(Element)nodeList.item(i);
m1XMLOutputResponse=element.getTextContent();
System.out.println("#####"+element.getTagName()+" "+element.getTextContent());
}

最佳答案

考虑使用JAXB图书馆。这确实是一种将 XML 映射到 Java 类并返回的轻松方法。基本原理是 JAXB 获取您的 XML 模式 (XSD) 并为您生成相应的 Java 类。然后,您只需调用 marshallunmarshall 方法,用 XML 的内容填充您的 Java 类,或者从您的 Java 类生成 XML。

当然,唯一的缺点是您需要知道如何编写 XML 模式:)

关于java - 如何在java中从XML中获取节点和节点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5610786/

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