JAVA生成XML的简单方法
package com.sunyard.insurance.migration.service;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;
import org.apache.log4j.Logger;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
import com.sunyard.insurance.migration.bean.DocInfoBean;
import com.sunyard.insurance.migration.bean.PageInfoBean;
import com.sunyard.insurance.migration.bean.VTreeBean;
import com.sunyard.insurance.migration.global.GlobalVar;
/**
* 封装XML数据,生成xml文件
* @author wql
*
*/
public class CreateXml {
private static final Logger loger = Logger.getLogger(CreateXml.class);
private Element docElement;
private Element DocInfo;
private Document document;
//构造方法,对数据进行初始化,并生成xml文件的整体框架
public CreateXml(){
document = DocumentHelper.createDocument();
docElement = document.addElement("doc");
docElement.setAttributeValue("version", "1.1");
//创建DocInfo节点
DocInfo = docElement.addElement("DocInfo");
//DocInfo的下级节点
Element BATCH_ID = DocInfo.addElement("BATCH_ID");
BATCH_ID.setText("123456"));
}
//生成XML文件(传递过来的参数是:地址及文件名,document)
public void createXml(String addressAndName) throws Exception {
// 创建格式化类
OutputFormat format = OutputFormat.createPrettyPrint();
// 设置编码格式
format.setEncoding("utf-8");
FileOutputStream os = null;
XMLWriter xmlWriter = null;
try {
os = new FileOutputStream(addressAndName);
//写入xml文件
xmlWriter = new XMLWriter(os,format);
xmlWriter.write(document);
} catch (FileNotFoundException e) {
loger.info("Create xml file is failed!" + e);
} catch (UnsupportedEncodingException e) {
loger.info("Create xml file is failed!" + e);
} catch (IOException e) {
loger.info("Create xml file is failed!" + e);
}finally{
try {
xmlWriter.close();
os.close();
} catch (IOException e) {
loger.info("关闭资源出错了!"+e);
loger.error("关闭资源出错了!"+e);
}
}
}
}
注意:用到的JAR包:dom4j.jar
请自行下载!