Java JDOM XML:如何将节点移动一级

时间:2014-08-13 12:08:37

标签: java xml jdom

我有以下问题。我想将节点及其所有子节点向上移动,例如:

原始XML文件:

<a>
  <r>
    <b>test</b>
    <c>
      <d>test</d>
      <e>test</e>
      <f>
        <k>ddd</k>
      </f>
    </c>
  </r>
</a>

所以我想获得标记<r>及其所有子元素并将它们向上移动一级:

<r>
  <b>test</b>
  <c>
    <d>test</d>
    <e>test</e>
    <f>
      <k>ddd</k>
    </f>
  </c>
</r>

我在JDOM2中找不到任何功能。

1 个答案:

答案 0 :(得分:2)

根元素有点特殊,尝试这样的事情:

document.setRootElement(document.getRootElement().getChild("r").detach());

detach必须将r元素与其当前父元素(a)分离,以便它可以重新成为{{1}的直接子元素。 } node。