DOM4J 与 JDOM 解析XML

DOM4J解析:
package com.rui.dom4j;

import java.io.FileOutputStream;

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

public class Dom4JExercise {
	
	public static void main(String[] args) throws Exception {
		
		Document document = DocumentHelper.createDocument();
		
		Element root = DocumentHelper.createElement("联系人列表");
		
		document.setRootElement(root);
		
		root.addAttribute("公司", "A 集团");
		
		Element eleLinkman = root.addElement("联系人"); 
		
		eleLinkman.addElement("姓名").setText("张三");
		eleLinkman.addElement("公司").setText("A 公司");
		eleLinkman.addElement("电话").setText("(021)5555666");
		
		Element street = eleLinkman.addElement("地址");
		
		street.addElement("街道").setText("5 街");
		street.addElement("城市").setText("上海市");
		street.addElement("省份").setText("上海");
		
		Element eleLinkman2 = root.addElement("联系人"); 
		
		eleLinkman2.addElement("姓名").setText("王三");
		eleLinkman2.addElement("公司").setText("B 公司");
		eleLinkman2.addElement("电话").setText("(021)5555777");
		
		Element street2 = eleLinkman2.addElement("地址");
		
		street2.addElement("街道").setText("87 街");
		street2.addElement("城市").setText("北京市");
		street2.addElement("省份").setText("北京");
		
		
		XMLWriter xmlWriter = new XMLWriter(new FileOutputStream("linkmans.xml"), new OutputFormat("    ", true, "UTF-8"));
		
		xmlWriter.write(document);
	}

}

JDOM解析:
package com.rui.jdom;

import java.io.FileOutputStream;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class JDomExercise {

	public static void main(String[] args) throws Exception {

		Document doc = new Document();

		Element root = new Element("联系人列表").setAttribute("公司", "A 集团");

		doc.addContent(root);

		root.addContent(new Element("联系人")
				.addContent(new Element("姓名").setText("张三"))
				.addContent(new Element("公司").setText("A 公司"))
				.addContent(new Element("电话").setText("(021)5555666"))
				.addContent(
						new Element("地址")
								.addContent(new Element("街道").setText("5 街"))
								.addContent(new Element("城市").setText("上海市"))
								.addContent(new Element("省份").setText("上海"))));
		root.addContent(new Element("联系人")
				.addContent(new Element("姓名").setText("王三"))
				.addContent(new Element("公司").setText("B 公司"))
				.addContent(new Element("电话").setText("(021)5555777"))
				.addContent(
						new Element("地址")
								.addContent(new Element("街道").setText("87 街"))
								.addContent(new Element("城市").setText("上海市"))
								.addContent(new Element("省份").setText("上海"))));

		XMLOutputter out = new XMLOutputter(Format.getPrettyFormat().setIndent("    ").setEncoding("UTF-8"));

		out.output(doc, new FileOutputStream("linkmans.xml"));

	}

}


生成XML文件:
<?xml version="1.0" encoding="UTF-8"?>
<联系人列表 公司="A 集团">
    <联系人>
        <姓名>张三</姓名>
        <公司>A 公司</公司>
        <电话>(021)5555666</电话>
        <地址>
            <街道>5 街</街道>
            <城市>上海市</城市>
            <省份>上海</省份>
        </地址>
    </联系人>
    <联系人>
        <姓名>王三</姓名>
        <公司>B 公司</公司>
        <电话>(021)5555777</电话>
        <地址>
            <街道>87 街</街道>
            <城市>上海市</城市>
            <省份>上海</省份>
        </地址>
    </联系人>
</联系人列表>

你可能感兴趣的:(dom4j)