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

[JavaWeb基础] 031.dom4j写入xml的方法的更多相关文章

  1. [JavaWeb基础] 030.dom4j读取xml的4种方法

    通常我们在项目开发的过程中经常要操作到xml文件,在JAVA这边,我们会很自然的联想到Dom4J这个apache的开源插件,那么我们使用Dom4J如何来读取xml文件呢?下面我们来看看以下4种方法 1 ...

  2. java基础73 dom4j修改xml里面的内容(网页知识)

    1.DOM4J对XML文件进行增删改操作 实现代码 package com.shore.code; import java.io.File; import java.io.FileOutputStre ...

  3. SQL Server XML基础学习之<7>--XML modify() 方法对 XML 数据中插入、更新或删除

    /*------------------------------------------------------------------------------+ #| = : = : = : = : ...

  4. 转载---SQL Server XML基础学习之<7>--XML modify() 方法对 XML 数据中插入、更新或删除

    /*------------------------------------------------------------------------------+ #| = : = : = : = : ...

  5. java dom4j写入XML

    引用的两个jar包 dom4j-1.6.1.jar jaxen.jar //=========================代码 import java.io.FileWriter;import j ...

  6. org.dom4j.IllegalAddException: No such namespace prefix: *** is in scope on: org.dom4j.tree.DefaultElement (dom4j写入XML文件,标签中带【:】(冒号)解决办法)

    用dom4j操作写XML文件,标签中含有冒号,会报 org.dom4j.IllegalAddException: No such namespace prefix: *** is in scope o ...

  7. 【XML】利用Dom4j读取XML文档以及写入XML文档

    Dom4j简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它的性能 ...

  8. JavaWeb基础—XML学习小结

    一.概述 是什么? 指可扩展标记语言 能干什么? 传输和存储数据 怎么干? 需要自行定义标签. XML 独立于硬件.软件以及应用程序 通常.建立完xml文件后首要的任务是:引入约束文件! 二.XML简 ...

  9. asp.net写入读取xml的方法

    添加命名空间 using System.Xml; 我自己的代码(添加其中的节点) XmlDocument xmlDoc = new XmlDocument();xmlDoc.Load(Server.M ...

随机推荐

  1. B. Marvolo Gaunt's Ring 前缀后缀

    B. Marvolo Gaunt's Ring 这种一般只有三个的都可以处理前缀和后缀,再枚举中间这个值. 这个和之前写过的C. Four Segments 前缀后缀 处理方式很像. #include ...

  2. 经典卷积神经网络算法(2):AlexNet

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  3. Django 设置admin后台表和App(应用)为中文名

    设置表名为中文 1.设置Models.py文件 class Post(models.Model): name = models.CharField() --省略其他字段信息 class Meta: v ...

  4. x86软路由虚拟化openwrt-koolshare-mod-v2.33联通双拨IPV6教程(第一篇)

    本文分两篇发布,此为第一篇,第二篇:https://www.cnblogs.com/zlAurora/p/12433302.html   年前TB购置了一台软路由,对家里网络来了个大改造,实现了PPP ...

  5. [hdu3631]背包或中途相遇法

    暴力的背包: #pragma comment(linker, "/STACK:10240000,10240000") #include <iostream> #incl ...

  6. 附018.K3S-ETCD高可用部署

    一 K3S概述 1.1 K3S介绍 K3S是一个轻量级Kubernetes发行版.易于安装,内存消耗低,所有二进制文件不到40mb. 适用于: 边缘计算-Edge 物联网-IoT CI ARM 1.2 ...

  7. IOS App打包发布完整流程

    注册成为开发者 登录苹果开发者中心,点击Accounts,在这里需要你填写你的Appple ID进行登录,如果没有,点击这里申请一个,填写信息就成,这里就不再赘述.申请完成之后,使用申请的AppID进 ...

  8. Java设计模式之建造者模式(Builder Pattern)

    前言 这篇文章主要向大家讲解什么是建造者模式,建造者模式的实例讲解及应用场景等知识点. 一.建造者介绍 ​ 用户可以不知道产品的构建细节直接可以创建复杂的对象,主要是分离了产品的构建和装配,这样就实现 ...

  9. OpenCV开发笔记(五十五):红胖子8分钟带你深入了解Haar、LBP特征以及级联分类器识别过程(图文并茂+浅显易懂+程序源码)

    若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...

  10. Linux --如何新增一块硬盘并自动挂载

    1. 虚拟机添加硬盘 2.  分区 fdisk /dev/sdb 3. 格式化 mkfs -t ext4 /dev/sdb1 将刚刚创建的盘格式化成 ext4格式 4. 挂载 先创建一个目录,/hom ...