element.detach()与elment.appendContent(childEl.getParent())

<pre name="code" class="java">public static void main( String[] args ){
	XMLReadandWrite mR = new XMLReadandWrite();
	
	try {
		Document document1 = mR.readXMLToDoc("test1.xml");
		Document document2 = mR.readXMLToDoc("test2.xml");
		List items = document1.selectNodes("//root//student");
		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//stdent//test");
		for(Object o:attr_listList){
			Element element = (Element)o;
			Attribute a = element.attribute("Name");
			//System.out.println(a.asXML());
			a.setValue("test");
			//System.out.println(a.asXML());
		}
		document2.getRootElement().appendContent(newDOc.getRootElement());
		document2.getRootElement().elements().add(0, (Element)newDOc.selectSingleNode("//root//student").clone());
		System.out.println(document2.asXML());
		
	} catch (Exception e) {
		e.printStackTrace();
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值