Java用Xom生成XML文档
这个总结源于Java编程思想第四版18.13节的案例:
完整代码地址:
相关Api地址:
由于案例中对的使用XOM并不深入,我也只简单的总结了下
用XOM进行序列化过程:
1.使用Element构建Element之间的关系
2.使用Document传入Element对象,生成Document对象
3.调用Serializer,将Document对象序列化成文档
Element对应XML文档中的标签:
String first = Zhang;
String second = San;
Element person = new Element("person");
//对应生成的标签:<first>Zhang</first>
Element firstName = new Element("first");
firstName.appendChild(first);
//对应生成的标签:<last>San</last>
Element lastName = new Element("last");
lastName.appendChild(last);
/*
对应生成的标签:
<person>
<first>Zhang</first>
<last>San</last>
</person>
*/
person.appendChild(firstName);
person.appendChild(lastName);
Document代表着文档,构造时传入Element
Document doc = new Document(person);
Serializer将Document变成文件,其有许多属性可以设置,和XML文档有对应关系
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream("person.xml"));
Serializer serializer = new Serializer(out,"ISO-8859-1");
serializer.setIndent(); //设置缩进空格数
serializer.setMaxLength(); //一行最大字符数
serializer.write(doc); //将文件写入
serializer.flush();
用XOM进行反序列化过程:
1.得到Document对象
2.一层一层的剥下标签~
我看案例源代码,这个地方确实是一层一层的在剥标签
Document doc = Builder.build("people.xml"); //这个people与上文的person.xml没有任何关系
Element root = doc.getRootElement(); //得到根标签
Elements elements = root.getChildElements(); //得到根标签下的所有Elements,剥下了案例中的people标签,得到了所有person标签的集合
for(Element element : elements){
first = element.getFirstChild("first"); //剥下first标签
last = element.getFirstChild("last"); //剥下last标签
}
Java用Xom生成XML文档的更多相关文章
- DOM生成XML文档与解析XML文档(JUNIT测试)
package cn.liuning.test; import java.io.File; import java.io.IOException; import javax.xml.parsers.D ...
- SAX解析和生成XML文档
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本人声明.否则将追究法律责任. 作者: 永恒の_☆ 地址: http://blog.csdn.net/chenghui031 ...
- JDOM生成XML文档的一般方法
由于DOM提供的生成XML的方法不够直观,而且要用到各种繁琐的注解,鉴于此可借助第三方库-----JDOM生成XML文档.具体操作方式如下: import java.io.FileOutputStre ...
- 使用DOM4J生成XML文档
package xml; import java.io.FileOutputStream; import java.util.ArrayList; import java.util.List; imp ...
- php7 使用dom动态生成xml文档
<?php $dom = new DomDocument('1.0','gb2312'); //创建DOM对象 $store = $dom->createElement('store'); ...
- DOM生成XML文档
import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuil ...
- Java开发知识之XML文档使用,解析
目录 XML文件详解 一丶XML简介 1.文档结构 2.XML中的元素(Element)或者叫做标签(Tab).属性 文本内容. 节点(Node) 3.XML语法规则 二丶XML文档解析 三丶使用XP ...
- java使用freemarker 生成word文档
java 生成word文档 最近需要做一个导出word的功能, 在网上搜了下, 有用POI,JXL,iText等jar生成一个word文件然后将数据写到该文件中,API非常繁琐而且拼出来的 ...
- java: (正则表达式,XML文档,DOM和DOM4J解析方法)
常见的XML解析技术: 1.DOM(基于XML树结构,比较耗资源,适用于多次访问XML): 2.SAX(基于事件,消耗资源小,适用于数量较大的XML): 3.JDOM(比DOM更快,JDOM仅使用具体 ...
随机推荐
- vmstat命令浅析
vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况.这个命令是我查看Linux/Unix最 ...
- 【原创】基于Docker的CaaS容器云平台架构设计及市场分析
基于Docker的CaaS容器云平台架构设计及市场分析 ---转载请注明出处,多谢!--- 1 项目背景---概述: “在移动互联网时代,企业需要寻找新的软件交付流程和IT架构,从而实现架构平台化,交 ...
- 基于ASP.NET的新闻管理系统(三)代码展示
5.1.1栏目部分 增加栏目(addLanMu.aspx): <html xmlns="http://www.w3.org/1999/xhtml"> <head ...
- 查看linux系统时间和时区
参考地址:http://lidao.blog.51cto.com/ 一.使用date命令查看系统时间 [root@benbang ~]# date -R Tue, 01 Aug 2017 15:43: ...
- 推荐三个学习git的网站或教程
廖雪峰官方教程:https://www.liaoxuefeng.com/wiki/896043488029600/900388704535136 ProGit中文版:https://git-scm.c ...
- 【fullGC】内存监控工具
什么是fullGC: 从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC,对老年代GC称为Major GC,而Full GC是对整个堆来说的,在最近几个版本的J ...
- laravel配置不同环境的配置文件
//在入口bootstrap/App.php中 $env = $app->detectEnvironment( function () use ($app) { $uname = php_una ...
- Niginx简单的配置
#user nobody; #这里的数值不能超过 CPU 的总核数,因为在单个核上部署超过 1 个 Nginx 服务进程并不起到提高性能的作用.worker_processes 2; #nginx进程 ...
- C语言:正负数之间取模运算(转载)
如果 % 两边的操作数都为正数,则结果为正数或零:如果 % 两边的操作数都是负数,则结果为负数或零.C99 以前,并没有规定如果操作数中有一方为负数,模除的结果会是什么.C99 规定,如果 % 左边的 ...
- SpringMVC_Two
SpringMVC_Two 响应数据和结果视图 创建工厂 导坐标: </load-on-startup> </servlet> <servlet-mapping> ...