使用java排列子节点

Posted

技术标签:

【中文标题】使用java排列子节点【英文标题】:Arrange child nodes using java 【发布时间】:2014-02-22 06:25:56 【问题描述】:

我有以下三个不同的节点层次结构(数据):

1)
Root
   FirstChild
       leaf
2)     
Root
    SecondChild
       leaf
3)
Root
     ThirdChild
         LeafRoot
             leaf

我希望在一棵树中得到如下结果:

 Root
    FirstChild
       leaf
    SecondChild
       leaf
    ThirdChild
       LeafRoot
           leaf    

我使用以下代码从三个不同的文档中获取子节点。

        NodeList nodeList1 = document1
        .getElementsByTagName("root");

        NodeList nodeList2 = document2
        .getElementsByTagName("root");

        NodeList nodeList3 = document3
        .getElementsByTagName("root");

【问题讨论】:

我已经把代码检查出来了。 运行代码时会发生什么以及您期望会发生什么? 我已经解释过了。检查一下 【参考方案1】:

你可以试试这样的:

Node rootNode = nodeList1.item(0).appendChild(document1.importNode(nodeList2.item(0).getFirstChild(), true));
rootNode = rootNode.appendChild(document1.importNode(nodeList3.item(0).getFirstChild(), true));

【讨论】:

这不会单独工作。您首先需要使用 rootNode 的文档 importNode 将节点“采用”为自己的节点。不允许在树之间共享节点。

以上是关于使用java排列子节点的主要内容,如果未能解决你的问题,请参考以下文章

easyui tree 怎么获取选择节点子节点上的值?js怎么写?

EasyUI tree 选中父节点子节点全部选中,选中子节点父节点不选中

jQuery DOM节点操作 - 父节点子节点兄弟节点

ztree获取当前选中节点子节点id集合的方法(转载)

TreeView 点击触发父节点子节点的连锁反应选中与取消

是元素节点的属性节点子节点