java - 使用 JDOM API 删除 XML 属性?

标签 java xml jdom

我有一个如下所示的 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 删除元素?

最佳答案

您已经尝试过什么?

  1. 找到 Details 标记(即文档根目录)
  2. 找到ROWSET标签
  3. 对于 ROWSET 中的每个 ROW 标记,调用节点上的 detach() 方法和 append()将此分离的节点添加到 Details 标记。
  4. 删除 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 .

关于java - 使用 JDOM API 删除 XML 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10514756/

相关文章:

java - 如何遍历XML文档?

java - 如何使用故障转移传输处理 Activemq 的最大帧大小异常

java - 如何在 java 中的 DefaultListModel 中保存数据

java - XmlMapper 在解析 LinkedHashMap 时缺少根

android - 使用自定义可绘制对象的自定义开关显得很大

java - 如何检索元素混合子元素作为文本 (JDOM)

java - null return Intent on android编程

java - 为什么较低的 delta 会导致我的 PID Controller 调整精度较低?

android - 在 GridView 中显示工作多个布局

java - 如何在java中使用jdom从节点中删除子节点?