在List由返回的getChildren()方法调用是一个java.util.List。对List对象的任何修改都会立即反映在支持文档中。这使对XML文档的操作变得容易。
您还可以查看如何Element通过调用addContent()方法将新的文档添加到文档中。package org.nhooo.example.jdom;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.util.List;
public class JDOMAddRemoveElement {
public static void main(String[] args) {
String xml = "" +
" " +
" " +
"";
SAXBuilder builder = new SAXBuilder();
try {
Document document = builder.build(
new ByteArrayInputStream(xml.getBytes()));
// 使用以下命令将新元素添加到文档的根目录
// addContent方法。
document.getRootElement().addContent(
new Element("people").setAttribute("id", "1"));
document.getRootElement().addContent(
new Element("people").setAttribute("id", "1"));
//添加一个新元素。通过向列表中添加一个新元素
//子级,我们可以修改xml文档。使用
// java.util.List进行XML文档的修改
// 简单容易。
List children = document.getRootElement().getChildren();
children.add(new Element("user")
.setAttribute("name", "Carol")
.setAttribute("age", "25")
.setAttribute("dob", "06-03-1984"));
// 将元素添加到xml文档的开头。
children.add(0, new Element("user")
.setAttribute("name", "Jimmy")
.setAttribute("age", "25")
.setAttribute("dob", "16-05-1984"));
// 删除第四个元素。
children.remove(3);
XMLOutputter outputter =
new XMLOutputter(Format.getPrettyFormat());
outputter.output(document, System.out);
} catch (JDOMException | IOException e) {
e.printStackTrace();
}
}
}
此代码的结果是:<?xml version="1.0" encoding="UTF-8"?>
Maven依赖
org.jdom
jdom2
2.0.6