需要dom4j-1.6.1.jar

package xml;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;

public class DOM4J01 {

    public static void main(String[] args) {
        Document document=DocumentHelper.createDocument();
        Element studentElement=document.addElement("student");
        studentElement.addAttribute("id", "001");
        studentElement.addAttribute("aa", "xx");

        Element name=studentElement.addElement("name");
        name.setText("张三");
        Element sex=studentElement.addElement("sex");
        sex.setText("男");
        Element age=studentElement.addElement("age");
        age.setText("20");

        OutputFormat format=OutputFormat.createPrettyPrint();
        format.setEncoding("UTF-8");
        try {
            XMLWriter writer=new XMLWriter(new FileOutputStream("src/student3.xml"),format);
            writer.write(document);
            writer.close();
        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

遍历

xml

<?xml version="1.0" encoding="UTF-8"?>
<students>
    <student>
        <name id="001" xx="哈哈">张三</name>
        <sex></sex>
        <age>20</age>
    </student>
    <student>
        <name id="002">李四</name>
        <sex></sex>
        <age>21</age>
    </student>
</students>
@Test
    public void xx()throws Exception{
        SAXReader saxReader=new SAXReader();
        Document document=saxReader.read("src\\main\\resources\\students.xml");
        Element rootElement=document.getRootElement();
        Iterator iter=rootElement.elementIterator();
        while(iter.hasNext()){
            Element studentElement=(Element)iter.next();
            System.out.println("学号:"+studentElement.attributeValue("id"));
            System.out.println("姓名:"+studentElement.elementText("name"));
            System.out.println("性别:"+studentElement.elementText("sex"));
            System.out.println("年龄:"+studentElement.elementText("age"));
            System.out.println("=========");
        }

    }



学号:null
姓名:张三
性别:男
年龄:20
=========
学号:null
姓名:李四
性别:女
年龄:21
=========