我最近问了一个问题,一位成员帮助了我很多如何克隆一些元素并从一个元素中删除元素。但是当输入 XML 中有多个元素时,无法使用相同的方法(这不是重复的问题)。例如,如果我以这种格式输入 XML(当然元素的数量总是不同的):
<SyncMXAUTHCI>
<MXAUTHCISet>
<CI>
<CINAME>COMPUTER68</CINAME>
</CI>
</MXAUTHCISet>
</SyncMXAUTHCI>
想要拥有它的克隆
<SyncMXAUTHCI>
<MXAUTHCISet>
<CI>
<CINAME>COMPUTER68</CINAME>
</CI>
<CI>
<CINAME>COMPUTER68</CINAME>
</CI>
</MXAUTHCISet>
</SyncMXAUTHCI>
我将使用它,它完美地工作:
Document erJdom = erData.getData();
Element root = erJdom.getRootElement();
Namespace erJdomNamespace = root.getNamespace();
Element incSet = root.getChild("MXAUTHCISet", erJdomNamespace);
incSet.addContent((Element)incSet.getChild("CI", erJdomNamespace).clone());
但是如果我在输入 XML 中有 2 个 CI 元素怎么办:
<SyncMXAUTHCI>
<MXAUTHCISet>
<CI>
<CINAME>COMPUTER68</CINAME>
</CI>
<CI>
<CINAME>COMPUTER100</CINAME>
</CI>
</MXAUTHCISet>
</SyncMXAUTHCI>
我试过这个,getChildren
但它不会编译,因为:
incSet.addContent((Element)incSet.getChildren("CI", erJdomNamespace).clone());
然后它说 List 类型的方法 clone() 是未定义的
如何克隆多个元素?先感谢您!