使用Dom4j在指定节点附近插入元素


File file = new File("mmm.xml");
String fileStr;
try {
fileStr = FileUtils.readFileToString(file);
Document doc = DocumentHelper.parseText(fileStr);

XPath x = doc.createXPath("/CFX/HEAD/MsgID");
Element rootEle = doc.getRootElement();
//坐标的ELE元素
Element valueEle = (Element)x.selectSingleNode(doc);
System.out.println("ele val:" + valueEle.getText());
// 新创建的Ele 元素
Element newEle = DocumentHelper.createElement("Ref");//
newEle.addText("00000000000");

List<Element> list = valueEle.getParent().content();
// list.indexOf(valueEle)+1, +1 表示在坐标元素之后; 不+1,则在坐标元素之前
list.add(list.indexOf(valueEle)+1, newEle);

System.out.println(doc.asXML());



<?xml version="1.0" encoding="ISO-8859-1"?><CFX><HEAD><VER>1.0</VER><SRC>303100000006</SRC><DES>100000000000</DES><APP></APP><MsgNo>0001</MsgNo><MsgID>20121024133250707249</MsgID><WorkDate>20121024</WorkDate><Reserve>0</Reserve></HEAD><MSG><SingleCheckBusinessHead0001><BankCode>3550</BankCode><EntrustDate>20121024133250</EntrustDate><BusinessCode>01</BusinessCode><UserCode>902321</UserCode></SingleCheckBusinessHead0001><SingleCheckRequestMessage0001><ID>362401198310031012</ID><Name></Name></SingleCheckRequestMessage0001></MSG></CFX>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值