我有一个像以下
的JDOM元素示例:XML(JDOM元素)
<Details>
<Uniqueno>11111</Uniqueno>
<ROWSET name="Persons">
<ROW num="1">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
<ROW num="2">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
</ROWSET>
</Details>
我想转换成:
<Details>
<Uniqueno>11111</Uniqueno>
<ROW num="1">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
<ROW num="2">
<Name>60821894</Name>
<Age>938338789</Age>
</ROW>
</Details>
注意:已删除ROWSET元素
我想使用JDOM API删除元素吗?
答案 0 :(得分:1)
你有什么尝试过?
Details
标记(文档根目录)ROWSET
代码ROW
中的每个ROWSET
代码调用节点上的detach()
方法,并将append()
此分离节点调用Details
代码。ROWSET
标记。使用一些示例代码:
// 1
Element details = doc.getRootElement();
// 2
Element rowset = details.getChild("ROWSET");
// 3
for (Element row: rowset.getChildren()) {
Element r = row.detach();
details.appendChild(r);
}
// 4
details.removeChild(rowset);
未经测试,有关详细信息,请查看JDOM API。
答案 1 :(得分:1)
如果您使用的是JDOM 2.0.x,则可以执行以下操作:
for (Element rowset : details.getChildren("ROWSET")) {
rowset.detach();
for (Content c : rowset.getContent()) {
details.addContent(c.detach());
}
}
如果你正在使用JDOM 1.x,你可以做类似的事情,但有更多的演员......