dom4j 复制 平添 并修改 节点
dom4j 复制 添加 并修改 节点
public static void main( String[] args ){ XMLReadandWrite mR = new XMLReadandWrite(); try { Document document1 = mR.readXMLToDoc("d:/zf/workspace/javaTest/1.xml"); Document document2 = mR.readXMLToDoc("d:/zf/workspace/javaTest/2.xml"); List items = document1.selectNodes("//root//Item"); Document newDOc = DocumentHelper.createDocument(); Element root = newDOc.addElement("root"); for (Iterator iter = items.iterator(); iter.hasNext();) { Element item = (Element) iter.next(); //root.add(item.detach());//如果无需保留原文档对象 // System.out.println(item); root.appendContent(item.getParent()); //如果必需保留原对象} } List attr_listList = newDOc.selectNodes("//root//Item//attr"); for(Object o:attr_listList){ Element element = (Element)o; Attribute a = element.attribute("Name"); // System.out.println(a.asXML()); a.setValue("111111"); // System.out.println(a.asXML()); } // System.out.println(document1.asXML()); // System.out.println(newDOc.asXML()); document2.getRootElement().appendContent(newDOc.getRootElement()); document2.getRootElement().elements().add(0, (Element)newDOc.selectSingleNode("//root//Item").clone()); System.out.println(document2.asXML()); } catch (Exception e) { e.printStackTrace(); } }