首页 技术 正文
技术 2022年11月18日
0 收藏 807 点赞 4,860 浏览 1687 个字

上一篇我们讲述了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();
}

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

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

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

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

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,104
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,581
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,428
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,200
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,835
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,918