gpt4 book ai didi

java - XML/Xpath -- getTextContent() -- 我希望将每个属性作为字符串获取

转载 作者:行者123 更新时间:2023-12-01 04:33:16 26 4
gpt4 key购买 nike

我有以下XML和Xpath代码..使用node.getContent()我得到完整SUID元素的字符串返回..获取每个元素并使用recid,suid构造一个新对象的最佳方法是什么,组

谢谢!

</newticket>
<suid>
<recid>8848DC1650664B0294B194B1D6F61AA0</recid>
<suid>RST40024</suid>
<grouplink_recid>C66A8FF92F0F4CE9825A4C42ADDBF09A</grouplink_recid>
</suid>
<suid>
<recid>AF12C557C9DD4EA087155CC263204668</recid>
<suid>uiuyiitest</suid>
<grouplink_recid>C66A8FF92F0F4CE9825A4C42ADDBF09A</grouplink_recid>
</suid>
</account>
</newticket>

XPathExpression escalationIdXpath = xpath.compile("//newticket/account/suid");
NodeList idNodes = (NodeList) escalationIdXpath.evaluate(doc.getDocumentElement(), XPathConstants.NODESET);
Node node;
String escalationId;
Element urlElem;
for (int i = 0; i < idNodes.getLength(); i++) {
SuidType suid = new SuidType();
node = idNodes.item(i);
fulltext= node.getTextContent();
System.out.println(fulltext);
}

最佳答案

有几种方法可以实现这一目标...

你可以

获取 suid 节点的子节点,并将这些节点名称与 SuidType 对象的预期值进行比较...

你可以

使用新的 XPath 查找 suid 节点的每个子节点...

for (int i = 0; i < idNodes.getLength(); i++) {
SuidType suid = new SuidType();
node = idNodes.item(i);
XPathExpression subPath = xpath.compile("recid");
String recid = ((Node)subPath.evaluate(node, XPathConstants.NODE)).getTextContent();
subPath = xpath.compile("suid");
String suid= ((Node)subPath.evaluate(node, XPathConstants.NODE)).getTextContent();
subPath = xpath.compile("grouplink_recid");
String groupLink= ((Node)subPath.evaluate(node, XPathConstants.NODE)).getTextContent();
// Apply values to the object...
}

关于java - XML/Xpath -- getTextContent() -- 我希望将每个属性作为字符串获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17692136/

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