Java实现创建XML文件的方法

package com.utils;

/**
 * @author 码农小江
 * MyBlog:http://hi.baidu.com/new/xiaojiang
 * xmlByXiaoJiang.java
 * 2012-10-25下午11:24:11
 */
public  interface xmlByXiaoJiang{
	public void createXml(String fileName);
	public void parseXml(String fileName);
}


 

 

package com.campu;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;

import javax.lang.model.element.Element;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.transform.OutputKeys;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.*;

import com.utils.xmlByXiaoJiang;
/**
 * @author 码农小江
 * MyBlog:http://hi.baidu.com/new/xiaojiang
 * H20121025.java
 * 2012-10-25下午11:21:22
 */

public  class H20121025 implements xmlByXiaoJiang{
	private Document document;
	
	public void init(){
		try{
			DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
			DocumentBuilder builder = factory.newDocumentBuilder();
			this.document = builder.newDocument();
		}catch (ParserConfigurationException e) {
			System.out.println(e.getMessage());
		}
	}
	
	public void createXml(String fileName){
		org.w3c.dom.Element root = this.document.createElement("zhongguo");
		this.document.appendChild((Node) root);
		
		org.w3c.dom.Element employe = (org.w3c.dom.Element) this.document.createElement("employee");
		org.w3c.dom.Element name = (org.w3c.dom.Element) this.document.createElement("name");
		((Node) name).appendChild(this.document.createTextNode("manongxiaojiang"));
		((Node) employe).appendChild((Node) name);
		org.w3c.dom.Element sex = (org.w3c.dom.Element)this.document.createElement("sex");
		((Node) sex).appendChild(this.document.createTextNode("m"));
		((Node) employe).appendChild((Node) sex);
		((Node) employe).appendChild((Node)sex);
		org.w3c.dom.Element age = (org.w3c.dom.Element) this.document.createElement("age");
		((Node) age).appendChild(this.document.createTextNode("25"));
		((Node) employe).appendChild((Node) age);
		((Node) root).appendChild((Node) employe);
		
		TransformerFactory tf = TransformerFactory.newInstance();
		try{
			Transformer transformer = tf.newTransformer();
			DOMSource source = new DOMSource(document);
			transformer.setOutputProperty(OutputKeys.ENCODING, "gb2312");
			transformer.setOutputProperty(OutputKeys.INDENT, "yes");
			PrintWriter pw = new PrintWriter(new FileOutputStream(fileName));
			StreamResult result = new StreamResult(pw);
			transformer.transform(source, result);
			
		}catch(TransformerConfigurationException e){
			System.out.println(e.getMessage());
		}catch(IllegalArgumentException e){
			System.out.println(e.getMessage());
		}catch(TransformerException e){
			System.out.println(e.getMessage());
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

	/* (non-Javadoc)
	 * @see com.utils.xmlByXiaoJiang#parseXml(java.lang.String)
	 */
	@Override
	public void parseXml(String fileName) {
		// TODO Auto-generated method stub
		
	}
	

}


 

package com.campu;

/**
 * @author 码农小江
 * MyBlog:http://hi.baidu.com/new/xiaojiang
 * H20121025xml.java
 * 2012-10-25下午11:59:09
 */
public class H20121025xml {
	public static void main(String args[]){
		String xmlFileNameString = "D:/ads.xml";
		H20121025 test =  new H20121025();
		test.init();
		test.createXml(xmlFileNameString);
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值