使用dom4j框架,创建xml文档并输出保存

dom4j是一个java的XML API,用来读写XML文件的,是一个开源的解析包。

package com.test.teach;

import java.io.FileOutputStream;
import java.io.FileWriter;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class Dom4JTest1 {
	public static void main(String[] args) throws Exception {
		//dom4j读取xml文档的方式一:
		
		// 第一种方式:创建文档,并创建根元素
		
		// 使用DocumentHelper类,创建文档
		Document document = DocumentHelper.createDocument();
		// 使用DocumentHelper类创建根节点并添加进文档
		Element root = DocumentHelper.createElement("student");
		document.setRootElement(root);
		// 为根节点添加属性name:键,值 对形式
		root.addAttribute("name", "zhangsan");
		//为根元素添加指定的属性hello、world
		Element helloElement = root.addElement("hello");
		Element worldElement = root.addElement("world");		
		//给一个子节点创建一个子节点
		Element helloElement1 = helloElement.addElement("hello1");
		worldElement.addAttribute("user", "test");
		//分别给他们进行设值
		helloElement.setText("hello Text");
		worldElement.setText("world text");
		//对该子节点赋值
		helloElement1.setText("test");
		
		//如果要输出到控制台
		XMLWriter xmlWriter = new XMLWriter();
		xmlWriter.write(document);
		//输出到指定的xml文档中
		//写出输出流的格式,先空4格,再换行
		OutputFormat format = new OutputFormat("    ", true);
		//第一种		
		XMLWriter xmlWriter2 = new XMLWriter(new FileOutputStream("a.xml"), format);
		xmlWriter2.write(document);
		// 另一种输出方式,记得要调用flush()方法,否则输出的文件中显示空白
		XMLWriter xmlWriter3 = new XMLWriter(new FileWriter("student.xml"),format);
		xmlWriter3.write(document);
		xmlWriter3.flush();

	}
}
------------------漂亮的分割线------------------------
import java.io.FileOutputStream;
import java.io.FileWriter;

import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.XMLWriter;
public class Dom4JTest1 {
	public static void main(String[] args) throws Exception {
	
		// 第二种方式:创建文档并设置文档的根元素节点
		Element root2 = DocumentHelper.createElement("student");
		Document document2 = DocumentHelper.createDocument(root2);
//		// 添加属性name:键,zhangsan为值
		root2.addAttribute("name", "zhangsan");
//		// 添加子节点:add之后就返回这个元素
//		//root2为要添加到的位置
		Element helloElement = root2.addElement("hello");
		Element worldElement = root2.addElement("world");
//		//分别给他们进行设值
		helloElement.setText("hello Text");
		worldElement.setText("world text");
//		// 输出
//		// 输出到控制台
		XMLWriter xmlWriter = new XMLWriter();
		xmlWriter.write(document2);
//		// 输出到文件
//		// 格式
//		// 设置缩进为4个空格,并且另起一行为true
		OutputFormat format = new OutputFormat("    ", true);
		
		XMLWriter xmlWriter2 = new XMLWriter(new FileOutputStream("student.xml"), format);
		xmlWriter2.write(document2);
		// 另一种输出方式,记得要调用flush()方法,否则输出的文件中显示空白
		XMLWriter xmlWriter3 = new XMLWriter(new FileWriter("student2.xml"),
				format);
		xmlWriter3.write(document2);
		xmlWriter3.flush();
		// close()方法也可以
	}
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值