由于DOM提供的生成XML的方法不够直观,而且要用到各种繁琐的注解,鉴于此可借助第三方库-----JDOM生成XML文档。具体操作方式如下:

import java.io.FileOutputStream;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter; public class JDomTest3
{
public static void main(String[] args) throws Exception
{
// 创建一个XML文档。其中方法允许访问根元素和文档类型和其他文档级别的信息。
Document document = new Document(); // 创建XML根元素。方法允许用户获取和操作它的子元素和内容,直接访问元素的文本内容,操纵它的属性可以管理命名空间。
// 获取NamespaceAware
// getNamespacesInScope()的详细信息,命名空间范围是什么以及它在是如何管理的,JDOM提供了具体的管理方法。
Element root = new Element("Employees"); // 给根元素设置属性和属性值,也可以设置命名空间等信息,相同的属性和命名空间将被覆盖。
root.setAttribute("city", "合肥").setAttribute("company", "科大讯飞"); // 将根元素追加到该XML文档的结尾。
document.addContent(root); // 创建根元素下的一个子元素
Element employee = new Element("employee"); // 创建子元素下的子元素
Element id = new Element("id"); // 创建子元素下的子元素
Element name = new Element("name"); // 给子元素添加内容
name.setText("emp1"); // 给子元素添加内容
id.setText("34"); // 将子子元素追加到子元素的结尾
employee.addContent(id); // 将子子元素追加到子元素的结尾
employee.addContent(name); // 将子元素追加到根元素的结尾
root.addContent(employee); // 将JDOM文档对象作为比特流输出到磁盘
XMLOutputter out = new XMLOutputter(); // 设置一个格式化的方法
Format format = Format.getPrettyFormat(); // 设置具体格式化的内容
format.setIndent(" "); // 将格式化的方法添加到输出流中
out.setFormat(format); // JDOM输出流依赖于javaIO流
out.output(document, new FileOutputStream("d:/employees.xml")); } }

最新文章

  1. 压力测试相关之ab命令
  2. asp.net mvc添加多条数据到数据库
  3. HDU 1394 Minimum Inversion Number(线段树/树状数组求逆序数)
  4. Cygwin下软件安装 - apt-cyg
  5. 《Visual C++ 程序设计》读书笔记 ----第8章 指针和引用
  6. 目录重定向的源代码工程( linux平台利用VFS实现目录重定向驱动)虚拟磁盘MINIPORT驱动代码(雨中风华)
  7. C语言循环小技巧
  8. Linux系列教程(二十四)——Linux的系统管理
  9. Linux命令—文件目录
  10. C语言实现简单黑客帝国代码流
  11. Python-Django 模型层-多表查询-2
  12. open还是codecs.open区别
  13. linux ./configure check your system clock
  14. 通过命令窗口控制mysql服务的启动与停止
  15. 禅道docker化(Centos7.2)
  16. idea集成uglifyjs2
  17. 关于IE9 table显示错位的问题
  18. auto_ptr,unique_ptr,shared_ptr,weak_ptr
  19. ABP ModuleZero 添加角色_创建角色是报错的问题解决方案
  20. docker 限制 容器内存 使用

热门文章

  1. python自动化之邮件发送
  2. jenkins 通过maven部署Tomcat8报错
  3. 【转】LINQ多表关联关联条件
  4. 【刷题】BZOJ 3514 Codechef MARCH14 GERALD07加强版
  5. java中poi进行execl导出
  6. 51nod 1471 小S的兴趣 | 分块 链表
  7. Python OS模块操作文件和目录
  8. micro 架构组件介绍
  9. CF&&CC百套计划3 Codeforces Round #204 (Div. 1) A. Jeff and Rounding
  10. bzoj千题计划147:bzoj1207: [HNOI2004]打鼹鼠