<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">一、导入dom4j-1.6.1.jar包</span>
Eclipse项目下新建文件夹lib,将jar包复制到文件夹里,右键-->build path-->add to build path
一、测试代码编写
在指定节点中增加子元素
@Test
public void testAdd() throws Exception {
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements("书");
Element specialPrice = DocumentHelper.createElement("特价");
specialPrice.setText("35.00元");
list.get(0).add(specialPrice);
XMLWriter writer = new XMLWriter(new FileOutputStream("book.xml"),
OutputFormat.createPrettyPrint());
writer.write(dom);
writer.close();
}
在指定节点中删除子元素
@Test
public void testDel() throws Exception {
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements("书");
Element specialPrice = list.get(0).element("特价");
list.get(0).remove(specialPrice);
XMLWriter writer = new XMLWriter(new FileOutputStream("book.xml"),
OutputFormat.createPrettyPrint());
writer.write(dom);
writer.close();
}
在指定节点中修改子元素
@Test
public void testModify() throws Exception{
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements();
list.get(0).element("特价").setText("32.00元");
XMLWriter writer = new XMLWriter(new FileOutputStream("book.xml"),
OutputFormat.createPrettyPrint());
writer.write(dom);
writer.close();
}
查找节点内容
@Test
public void testQuary() throws Exception {
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements("书");
String bookName = list.get(1).element("书名").getText();
System.out.println(bookName);
}
节点中增加、删除属性
@Test
public void testAddAtrr() throws Exception{
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements();
list.get(0).addAttribute("语言", "汉语");
XMLWriter writer = new XMLWriter(new FileOutputStream("book.xml"),
OutputFormat.createPrettyPrint());
writer.write(dom);
writer.close();
}
@Test
public void testDelAttr() throws Exception {
SAXReader reader = new SAXReader();
Document dom = reader.read("book.xml");
Element root = dom.getRootElement();
List<Element> list = root.elements();
Attribute attr = list.get(0).attribute("语言");
attr.getParent().remove(attr);
XMLWriter writer = new XMLWriter(new FileOutputStream("book.xml"),
OutputFormat.createPrettyPrint());
writer.write(dom);
writer.close();
}