比如XML内容如下:
那么如何使用dom4j在id为"1"的节点后增加一个节点呢?
测试在xml节点后增加一个节点
[code="java"]
import java.util.*;
import org.dom4j.*;
public class testxml {
public static void main(String[] args) {
String xml =
" <file> " +
" <chapter id=\"1\" name=\"a\"/> " +
" <chapter id=\"2\" name=\"b\"/> " +
" <chapter id=\"3\" name=\"c\"/> " +
" <chapter id=\"4\" name=\"d\"/> " +
" </file> " ;
try {
//生产doc文档
Document doc = DocumentHelper.parseText(xml);
//得到根节点
Element root = doc.getRootElement();
//得到根节点下的chapter节点
List elements = root.elements("chapter");
//遍历chapter节点
Iterator iterator = elements.iterator();
while(iterator.hasNext()){
Element e = (Element)iterator.next();
String id = e.attributeValue("id");
//如果id==1 则添加新的节点
if("1".equals(id) || "1" == id){
//新添加的节点
Element enew = e.addElement("chapterNew");
//添加属性和值
enew.addAttribute("id", "1.1");
enew.addAttribute("name", "a.1");
}
}
//打印
System.out.println(doc.asXML());
} catch (DocumentException e) {
e.printStackTrace();
}
}
}
[/code]