首先是写入XML文件:
package
org.jie.dom4j;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class dom4jTest ... {
public void createXml()
...{
Document doc=DocumentHelper.createDocument();
Element rootEle=doc.addElement("root");
rootEle.addComment("这是一个dom4j生成的xml文件");
Element root1=rootEle.addElement("root_1");
root1.addAttribute("id", "1");
Element root11=root1.addElement("root_11");
root11.setText("zhangsan");
Element root12=root1.addElement("root_12");
root12.setText("man");
try
...{
Writer out=new FileWriter("c:/test.xml");
OutputFormat format=OutputFormat.createCompactFormat();
format.setEncoding("UTF-8");
XMLWriter writer=new XMLWriter(out,format);
writer.write(doc);
writer.close();
System.out.println("生成xml文件成功!");
}
catch(IOException e)
...{
e.printStackTrace();
System.out.println("生成失败了!");
}
}
/** *//**
* @param args
*/
public static void main(String[] args) ...{
// TODO Auto-generated method stub
dom4jTest dt=new dom4jTest();
dt.createXml();
}
}
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class dom4jTest ... {
public void createXml()
...{
Document doc=DocumentHelper.createDocument();
Element rootEle=doc.addElement("root");
rootEle.addComment("这是一个dom4j生成的xml文件");
Element root1=rootEle.addElement("root_1");
root1.addAttribute("id", "1");
Element root11=root1.addElement("root_11");
root11.setText("zhangsan");
Element root12=root1.addElement("root_12");
root12.setText("man");
try
...{
Writer out=new FileWriter("c:/test.xml");
OutputFormat format=OutputFormat.createCompactFormat();
format.setEncoding("UTF-8");
XMLWriter writer=new XMLWriter(out,format);
writer.write(doc);
writer.close();
System.out.println("生成xml文件成功!");
}
catch(IOException e)
...{
e.printStackTrace();
System.out.println("生成失败了!");
}
}
/** *//**
* @param args
*/
public static void main(String[] args) ...{
// TODO Auto-generated method stub
dom4jTest dt=new dom4jTest();
dt.createXml();
}
}
接着是读取XML文件的一个小例:
<?
xml version="1.0" encoding="utf-8"
?>
< Result >
< VALUE >
< NO DATE ="2005" > A1 </ NO >
< ADDR > GZ </ ADDR >
</ VALUE >
< VALUE >
< NO DATE ="2004" > A2 </ NO >
< ADDR > XG </ ADDR >
</ VALUE >
</ Result >
< Result >
< VALUE >
< NO DATE ="2005" > A1 </ NO >
< ADDR > GZ </ ADDR >
</ VALUE >
< VALUE >
< NO DATE ="2004" > A2 </ NO >
< ADDR > XG </ ADDR >
</ VALUE >
</ Result >
package
org.jie.dom4j;
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class domRead ... {
public long ReadXml()
...{
long procTime=System.currentTimeMillis();
try
...{
File f=new File("c:/justRead.xml");
SAXReader reader=new SAXReader();
Document doc=reader.read(f);
Element root=doc.getRootElement();
Element foo;
List list=root.elements();
Iterator iter=list.iterator();
while(iter.hasNext())
...{
foo=(Element)iter.next();
System.out.println(foo.elementText("NO"));
System.out.println(foo.elementText("ADDR"));
}
}
catch(Exception e)
...{
e.printStackTrace();
}
procTime=System.currentTimeMillis()-procTime;
return procTime;
}
/** *//**
* @param args
*/
public static void main(String[] args) ...{
// TODO Auto-generated method stub
domRead dr=new domRead();
System.out.println(dr.ReadXml());
}
}
import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class domRead ... {
public long ReadXml()
...{
long procTime=System.currentTimeMillis();
try
...{
File f=new File("c:/justRead.xml");
SAXReader reader=new SAXReader();
Document doc=reader.read(f);
Element root=doc.getRootElement();
Element foo;
List list=root.elements();
Iterator iter=list.iterator();
while(iter.hasNext())
...{
foo=(Element)iter.next();
System.out.println(foo.elementText("NO"));
System.out.println(foo.elementText("ADDR"));
}
}
catch(Exception e)
...{
e.printStackTrace();
}
procTime=System.currentTimeMillis()-procTime;
return procTime;
}
/** *//**
* @param args
*/
public static void main(String[] args) ...{
// TODO Auto-generated method stub
domRead dr=new domRead();
System.out.println(dr.ReadXml());
}
}
个人觉得很不错,至少很方便!