当前位置: 首页 > 知识库问答 >
问题:

VTD XML导航到第一个子节点的同级子节点

游安康
2023-03-14

我的XML

<catalog>
<item Id="1">
<book id="b1">
</book>
<cd id="c1">
</cd>
</item>

<item Id="11">
<book id="b11">
</book>
<cd id="c11">
</cd>
</item>
</catalog>

我所拥有的。。

ap.selectXPath("/catalog/item");
while ((result = ap.evalXPath()) != -1) {
if (vn.toElement(VTDNav.FIRST_CHILD, "item")) {
do {
//do something with the contnets in the item node 
} while (vn.toElement(VTDNav.NEXT_SIBLING, "book"));
}

//移动到父节点以遍历其余项}

我想要的是到达“cd”节点。

在一些示例中,我看到了VTDNav。下一个_子节点似乎不可用。有人能建议如何到达我需要的节点吗?目前,我正在设法通过到达第一个_子节点,然后移动到下一个兄弟节点来实现这一点

if (vn.toElement(VTDNav.FIRST_CHILD, "book")) {
                    // Move to the next sibling 
                    vn.toElement(VTDNav.NEXT_SIBLING, "cd");

                }

谢谢你的帮助

当做

共有1个答案

霍襦宗
2023-03-14

你不应该有下一个孩子。你寻找的可能是NEXT_SIBLING,在你打电话FIRST_CHILD...

 类似资料:
  • 我目前正在为XML文档流开发一个自定义管道组件,其中根节点和该根节点的第一个子节点需要剥离,只剩下第二个子节点(现在是新的根节点)。 我正在使用XDocumt作为XML文档的容器类。我写了一些代码,获取第二个子节点,并创建一个新的XML文档,将该节点作为根节点,从而从图片中删除两个不需要的节点。 但是当我在Biztalk中测试这个设置时,我只得到一个空文档作为响应。它似乎创建了一个空的XML文档,

  • 问题内容: 我正在一个项目中,用户对我们的代客服务的请求在另一端代客接受请求。 我正在使用Firebase作为后端,并应要求将客户uid保存在“ request”子项上。 当代客接受请求时,客户uid应从“请求”节点移至“进行中”节点。 我怎样才能做到这一点? 问题答案: 我建议使用这个: 这来自以下来源:https : //gist.github.com/katowulf/6099042。我在J

  • 我已经实现了一个TreeModel来调整存量数据模型,以便将其可视化为JTree。我遇到了一个问题,节点有多个相同的子(叶)节点。例如,考虑一个JTree,它的叶节点是Strings。每当父节点包含具有相同String值的子节点时,就会出现问题。这些叶节点的TreePath是相同的,作为Strings,equals()返回true。留档明确地调用这个: JTree及其相关类广泛使用TreePath

  • 如果我没弄错的话,树通常是一个列表,其中的元素按特定顺序排列。孩子们不在他们自己的子列表中,他们都在同一个列表中。 所以,我试图创建一个Tree类,其中包含TreeNodes(类)使用Tree类中的List。 我如何跟踪父母/孩子/叶子?如果父母“父母1”,有两个孩子“孩子A”和“孩子B”,我如何将他们联系在一起?

  • 我需要以下xslt代码方面的帮助。我的意见如下: 我的预期输出为: 我曾尝试使用*/text()获取值节点的值,但我只从第一个孩子获得文本。将来我有很多这样的子元素。 提前谢谢。 你好,Minakshi

  • 当使用D3的4时,我在调整下面的代码片段以完全更新一个节点及其所有子节点时遇到了一点麻烦。 null 我相信上面的代码可以保持不变,但我需要做的是为“DragGingNode”添加一些更新,以便它可以正确地更新。 我最初的想法是在将以下代码段添加到“SelectedNode”数组之前简单地将其添加到上面的代码段中: 这很管用!问题是它只在没有子节点的节点上工作。需要更新子节点属性。