import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.util.Iterator;import java.util.List;import org.jdom.Document;import org.jdom.Element;import org.jdom.JDOMException;import org.jdom.input.SAXBuilder;import org.jdom.output.Format;import org.jdom.output.XMLOutputter;public class JDOMparseExample1 ...{ public static void main(String[] args) throws IOException,FileNotFoundException,JDOMException ...{ //SAXBuilder使用一个第三方的SAX解析器,可以从不同的输入源来构造JDOM文档对象 SAXBuilder builder=new SAXBuilder(); Document doc=builder.build(new FileInputStream("student.xml")); //getRootElement()用于返回文档的根元素. Element element=doc.getRootElement(); //Element类中定义了获取子元素的方法,得到所有子元素 List list=element.getChildren(); //iterator()方法返回以正确顺序在列表的元素上进行迭代的迭代器 //hasNext()方法判断如果仍有元素可以迭代,则返回 true for(Iterator i=list.iterator();i.hasNext();)...{ //next()方法返回迭代的下一个元素。重复调用此方法直到hasNext()方法返回 false, //这将精确地一次性返回迭代器指向的集合中的所有元素 Element current=(Element)i.next(); //判断姓名子元素的值是否为张三 if(current.getChildText("姓名").equals("张三"))...{ //删除年龄子元素 current.removeChild("年龄"); //创建年龄子元素 Element age=new Element("年龄"); //设置年龄子元素的值 age.setText("23"); //将年龄子元素添加到父元素中 current.addContent(age); } //判断姓名子元素的值是否为李四 if(current.getChildText("姓名").equals("李四"))...{ //删除年龄子元素 current.removeChild("年龄"); //创建年龄子元素 Element age=new Element("年龄"); //设置年龄子元素的值 age.setText("25"); //将年龄子元素添加到父元素中 current.addContent(age); } } Format format=Format.getCompactFormat(); //设置文档字符编码 format.setEncoding("GB18030"); //设置缩进字符串 format.setIndent(" "); //XMLOutputter类提供了将JDOM树输出为字节流的能力 XMLOutputter XMLOut=new XMLOutputter(format); //输出到文件 XMLOut.output(doc,new FileOutputStream("student.xml")); System.out.println("执行成功"); }} 以下是XML文档内容: <?xml version="1.0" encoding="GB18030"?><学生花名册> <学生 性别="男"> <姓名>李四</姓名> <电话>6287555</电话> <年龄>25</年龄> </学生> <学生 性别="男"> <姓名>张三</姓名> <电话>8273425</电话> <年龄>23</年龄> </学生></学生花名册>