gpt4 book ai didi

java - dom xml 解析器 java,相同的标签

转载 作者:行者123 更新时间:2023-12-01 15:56:25 24 4
gpt4 key购买 nike

我有这个 xml 文档,其中包含不同数量的相同命名标签。我怎样才能获得子元素的数量及其值。

    <Question>
<QuestionText>ABC?</QuestionText>
<Option>A1 - XYZ</Option>
<Option>A2 - WXY</Option>
<Option>A2 - HJK</Option>
<ID>1</ID>
</Question>
<Question>
<QuestionText>ERY?</QuestionText>
<QuestionText>NNN?</QuestionText>
<QuestionText>KKKK?</QuestionText>
<ID>2</ID>
</Question>

输出应为...

ID:2 Has 1 QuestionText and 3 Option QuestionText 1:ABC? Option 1:A1 - XYZ Option 2:A2 - WXY Option 3:A2 - HJK

ID:1 Has 3 QuestionText and 0 option QuestionText 1.ERY? QuestionText 2.NNN? QuestionText 3.KKKK?

我尝试过,但这给出了错误结果

    Element eElement = (Element) nNode;


for(int i=0;i<eElement.getChildNodes().getLength();i++){
System.out.println("NodeName:"+eElement.getNodeName());
System.out.println("Tag value:"+getTagValue("QuestionText",eElement));
System.out.println("Tag value:"+getTagValue("Option",eElement));
}

private static String getTagValue(String sTag, Element eElement){
NodeList nlList= eElement.getElementsByTagName(sTag).item(0).getChildNodes();
Node nValue = (Node) nlList.item(0);

return nValue.getNodeValue();
}

经过一番研究,我找到了解决方案

        Element eElement = (Element) nNode;

getTagValue("QuestionText",eElement);
getTagValue("Option",eElement);

private static void getTagValue(String sTag, Element eElement){
NodeList nlList = eElement.getElementsByTagName(sTag);
System.out.println("Size of nodelist:"+nlList.getLength());
for(int i=0;i<nlList.getLength();i++){
NodeList kList= eElement.getElementsByTagName(sTag).item(i).getChildNodes();
Node kValue = (Node) kList.item(0);
System.out.println("Node Value:"+kValue.getNodeValue());
}

}

最佳答案

什么是getTagValue()

无论如何,这对我来说是最好的 java DOM 解析器教程( How to read XML file in Java )。看看这个

这是来自该链接的 getTagValue()

private static String getTagValue(String sTag, Element eElement){
NodeList nlList= eElement.getElementsByTagName(sTag).item(0).getChildNodes();
Node nValue = (Node) nlList.item(0);

return nValue.getNodeValue();
}

关于java - dom xml 解析器 java,相同的标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4976266/

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