gpt4 book ai didi

java - 通过使用变量引用父节点来解析 XML

转载 作者:行者123 更新时间:2023-11-30 04:38:28 25 4
gpt4 key购买 nike

我正在尝试使用一个变量来指定我正在解析的 parent.child 节点。

下面是我当前的 xml:

<results>
<GW>
<result>
<item>Car</item>
<name>Bob</name
</result>
<result>
<item>Bike</item>
<name>Tom</name
</result>
</GW>

<BF>
<result>
<item>Apple</item>
<name>Mike</name
</result>
<result>
<item>Melon</item>
<name>Julia</name
</result>
</BF>


</results>

这是我的解析代码。我想使用变量 items 来告诉我应该解析哪个节点 GW 或 BF

//DOC IS ASSIGNED THE XML DATA EARLIER IN THE CODE

Bundle bundle = getIntent().getExtras();
int ITEMS = bundle.getInt("selection");


NodeList nodes = doc.node[ITEMS].getElementsByTagName("result");

for (int i = 0; i < nodes.getLength(); i++) {
HashMap<String, String> map = new HashMap<String, String>();

Element e = (Element)nodes.item(i);
map.put("main_content", XMLfunctions.getValue(e, "item"));
map.put("name", XMLfunctions.getValue(e, "name"));
mylist.add(map);
}

我试图只解析 GW 或 BF 的子节点,这取决于 ITEMS 的值。因此,如果 items 等于 0,那么我将从 GW 获取数据,如果它为 1,我将从 BF 获取数据。

如果我能猜到它会是这样的:

NodeList nodes = doc.childNode[ITEMS].getElementsByTagName("result");

最佳答案

Element docElem = doc.getDocumentElement();
NodeList nl = docElem.getElementsByTagName("results");
Element elem = (Element)nl.item(ITEMS);
nodes = elem.getElementsByTagName("result");

关于java - 通过使用变量引用父节点来解析 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6434399/

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