W e S D
0 1

[JavaWeb基础] 031.dom4j写入xml的方法

上一篇我们讲述了dom4j读取xml的4种方法,甚是精彩,那么怎么样写入xml呢?我们直接看下源码实现

	public static void main(String[] args) throws Exception {
		// 创建文档
		Document document = DocumentHelper.createDocument();
		// 设置编码
		document.setXMLEncoding("GBK");
		// 创建根节点
		Element root = document.addElement("students");
		// 创建xmlns xml namespace
		root.addNamespace("", "http://www.abc.com/ns/test");
		root.addNamespace("t", "http://www.abc.com/ns/test");
		root.addNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");
		// 创建属性
		root.addAttribute("xsi:schemaLocation",
				"http://www.abc.com/ns/test student.xsd");
		// 创建对象数组
		Student[] s = new Student[5];
		// 创建对象
		s[0] = new Student("001", "za", "za@163.com", 50, 19, true);
		s[1] = new Student("002", "zb", "zb@163.com", 51, 20, true);
		s[2] = new Student("003", "zc", "zc@163.com", 52, 21, true);
		s[3] = new Student("004", "zd", "zd@163.com", 53, 22, true);
		s[4] = new Student("005", "ze", "ze@163.com", 54, 23, true);
		// 写入对象
		for (int i = 0; i < s.length; i++) {
			Student stu = s[i];
			// 创建根节点
			Element e1 = root.addElement("student",
					"http://www.abc.com/ns/test");
            
			// 添加子元素
			e1.addElement("id").addText(stu.getId());
			e1.addElement("name").addText(stu.getName());
			e1.addElement("email").addText(stu.getEmail());
			e1.addElement("gender").addText(stu.getGender() ? "男" : "女");
			e1.addElement("age").addText("" + stu.getAge());
			e1.addElement("java").addText("" + stu.getJava());
		}
		// 创建输出流
		FileOutputStream fos = new FileOutputStream("student.xml");
		// 设置编码
		OutputStreamWriter osw = new OutputStreamWriter(fos, "GBK");
		OutputFormat of = new OutputFormat();
		of.setEncoding("GBK");
		of.setIndent(true);
		of.setIndent("    ");
		of.setNewlines(true);
		// 写入文件
		XMLWriter writer = new XMLWriter(osw, of);
		writer.write(document);
		writer.close();
	}

 以上代码言简意赅。大家可以自己写写调试下。

 

 

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 

转载自【宝宝巴士SuperDo团队】原文链接: http://www.cnblogs.com/superdo/p/5140399.html

posted @ 2016-01-18 20:29  SD.Team  阅读(492)  评论(0编辑  收藏  举报