JAVA中XML文件的生成与导出(DOM4j)

以下代码可以直接拿去测试使用,供首次了解的新人。本文使用dom4j,对于java来说,这是比较优秀的解析方式

dom4j生成XML文件

import java.io.File;
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 Dom4jXml {

	/**
	 * 生成xml方法
	 */
	public static void createXml(){
		try {
			// 1、创建document对象
			Document document = DocumentHelper.createDocument();
			// 2、创建根节点rss
			Element rss = document.addElement("rss");
			// 3、向rss节点添加version属性
			rss.addAttribute("version", "2.0");
			// 4、生成子节点及子节点内容
			Element channel = rss.addElement("VALUE");
			Element title = channel.addElement("NAME");
			title.setText("欢乐的ABC");
			// 5、设置生成xml的格式
			OutputFormat format = OutputFormat.createPrettyPrint();
			// 设置编码格式
			format.setEncoding("UTF-8");
			
			
			// 6、生成xml文件			
			File file = new File("F://ABC.xml");
			XMLWriter writer = new XMLWriter(new FileOutputStream(file), format);
			// 设置是否转义,默认使用转义字符
			writer.setEscapeText(false);
			writer.write(document);
			writer.close();
			System.out.println("生成ABC.xml成功");
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("生成ABC.xml失败");
		}
	}
}

dom4j导入XML文件

XML文件

<?xml version="1.0" encoding="GB2312"?>  
<RESULT>  
<VALUE>     
  <NAME>李四</NAME>     
  <SEX>男</SEX>  
</VALUE>  
<VALUE>     
  <NAME>菲菲</NAME>     
  <SEX>女</SEX>  
</VALUE>  
</RESULT>
import java.io.*;   
import java.util.*;   
import org.dom4j.*;   
import org.dom4j.io.*;   
  
public class MyXMLReader2DOM4J {   
public static void main(String arge[]) {   
  long lasting = System.currentTimeMillis();   
  try {   
    File f = new File("F://abc.xml");   
    SAXReader reader = new SAXReader();   
    Document doc = reader.read(f);   
    Element root = doc.getRootElement();   
    Element foo;   
   for (Iterator i = root.elementIterator("VALUE"); i.hasNext();) {   
     foo = (Element) i.next();   
     System.out.print("姓名:" + foo.elementText("NAME"));   
     System.out.println("性别:" + foo.elementText("SEX"));   
    }   
   } catch (Exception e) {   
    e.printStackTrace();   
   }   
}   
}
上一篇:php ajax异步读取rss文档数据


下一篇:php – RSS-Feed返回一个空字符串