【java】jdom生成xml文件

上篇介绍了jdom解析xml文件。这篇就介绍jdom生成xml。这样就会对jdom操作xml有一个彻底的了解了。一个是正向解析,另一个是方向生成。

package com.rthb.test;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;

public class CreatXml {

	/**
	 * 创建人:zhanglx
	 * 创建时间:下午04:33:37
	 * 描述   :用jdom生成xml
	 */
	public static void BulidXml(){
		Element root=new Element("School");//创建根节点School节点
		Document document=new Document(root);//把根节点添加打文档中
		Element  elementclass=new Element("class");//创建根节点的子节点
		elementclass.setAttribute("name","张三");//给子节点添加name属性
		elementclass.setAttribute("id","002");//给子节点添加id属性
		Element element_subject=new Element("subject");//给子节点添加subject元素
		element_subject.addContent("数学");
		elementclass.addContent(element_subject);
		
		Element element_subject1=new Element("score");//给子节点添加score元素
		element_subject1.addContent("90");
		elementclass.addContent(element_subject1);
		
		Element element_subject2=new Element("card");//给子节点添加card元素
		element_subject2.addContent("024125");
		elementclass.addContent(element_subject2);
		
		
		root.addContent(elementclass);//把子节点添加到根节点中。
		XMLOutputter XMLOut = new XMLOutputter(FormatXML());  //生成xml文件
		try {
			XMLOut.output(document, new FileOutputStream("src\\school.xml"));
		} catch (FileNotFoundException e) {
			System.out.println("生成xml文件失败!");
			e.printStackTrace();
		} catch (IOException e) {
			System.out.println("生成xml文件失败!");
			e.printStackTrace();
		}
	}
	public static void main(String[] args) {
		BulidXml();
	}
	  public static Format FormatXML(){  
	        //格式化生成的xml文件 
	        Format format = Format.getCompactFormat();  
	        format.setEncoding("utf-8");  
	        format.setIndent(" ");  
	        return format;  
	    }  
}

生成的xml文件school.xml。(我是在项目src下生成,在main方法执行一遍后,要刷新一下,要不然就不会出现了)
<?xml version="1.0" encoding="utf-8"?>
<School>
 <class name="张三" id="002">
  <subject>数学</subject>
  <score>90</score>
  <card>024125</card>
 </class>
</School>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值