xml解析之DOM4J

DOM4J是一组XML操作的组件包,主要用来读写XML文件

 

生成xml文件:

import 	java.io.*;
import  org.dom4j.*;
import  org.dom4j.io.*;
public class DOM4JWriter{
	public static void main(String[] args)throws Exception{
		Document doc=DocumentHelper.createDocument();
		Element addresslist=doc.addElement("addresslist");
		Element linkman=addresslist.addElement("linkman");
		Element name=linkman.addElement("name");
		Element email=linkman.addElement("email");
		
		name.setText("张三");
		email.setText("[email protected]");
		
		OutputFormat format=OutputFormat.createPrettyPrint();
		format.setEncoding("GBK");
		
		XMLWriter write=new XMLWriter(new FileOutputStream(new File("D:"+File.separator+"sanDaKuangJia"+File.separator+"xmldemo"+File.separator+"dom4j"+File.separator+"printXML.xml")));
		write.write(doc);
		write.close();
	}
}

 

解析输出xml文件:

import 	java.io.*;
import	java.util.*;
import  org.dom4j.*;
import  org.dom4j.io.*;
public class DOM4JReader{
	public static void main(String[] args)throws Exception{
		File file=new File("D:"+File.separator+"sanDaKuangJia"+File.separator+"xmldemo"+File.separator+"dom4j"+File.separator+"printXML.xml");
		SAXReader reader=new SAXReader();
		Document doc=reader.read(file);	//读取XML文件
		//JDOM操作的时候要取的根节点
		Element root=doc.getRootElement();
		//现在应该根据根节点找到全部的子节点,linkman
		Iterator iter=root.elementIterator();
		while(iter.hasNext()){
			Element linkman=(Element)iter.next();
			System.out.println("姓名:"+linkman.elementText("name"));
			System.out.println("邮件:"+linkman.elementText("email"));
		}
	}
}

 

DOM4J比JDOM在输出的格式上要好很多

你可能感兴趣的:(xml,dom4j)