package dom4j_write;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream; import org.dom4j.Document;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter; /**
* 输出写出一个xml文件:
* XMLWriter。
*
* 利用XMLWriter实现:
* 1)读取原来的xml文件(document对象)。Demo01 copy
* 2)操作document对象,改变xml信息(document对象)。Demo02 format and encoding
* 3)把修改后的document对象写出到xml文件中(覆盖原来的文件)。
*
* @author mzy
*
*/
public class Demo01 {
public static void main(String[] args) throws Exception {
Document doc = new SAXReader().read(new File("././src/contact.xml"));
/**
* 输出流:
* 字符输出流:
* Writer -> FileWriter/BufferedWriter
* write(char c);
* write(char[] data);
* write(String str);
*
*
* 字节输出流:
* OutputStream -> FileOutputStream/BufferedOutputStream/ObjectOutputStream
* write(byte);
* write(byte[] data);
*/ // 创建输出流
OutputStream outStream = new FileOutputStream("E:/user/eclipse_workStation/XML/src/dom4j_write/target.xml");
// 1)创建输出对象
XMLWriter writer = new XMLWriter(outStream);
// 2)写出数据
writer.write(doc); }
}

xml结构,如下:

<?xml version="1.0" encoding="gbk"?>
<contact-list>
<contact id="001" name="eric">
<name>张三</name>
<gender>男</gender>
<phone>134001114</phone>
<email>zhangsan@qq.com</email>
<address>成都</address>
</contact>
<contact id="002">
<name>李四</name>
<gender>男</gender>
<phone>134001115</phone>
<email>lisi@qq.com</email>
<address>广州</address>
</contact>
<contact id="003">
<name>王五</name>
<gender>男</gender>
<phone>134001116</phone>
<email>wangwu@qq.com</email>
<address>上海</address>
</contact>
</contact-list>

使用dom4j工具:XMLWriter写出文件(五)的更多相关文章

  1. 将基因组数据分类并写出文件,python,awk,R data.table速度PK

    由于基因组数据过大,想进一步用R语言处理担心系统内存不够,因此想着将文件按染色体拆分,发现python,awk,R 语言都能够非常简单快捷的实现,那么速度是否有差距呢,因此在跑几个50G的大文件之前, ...

  2. javaweb reponse 写出文件

    Map map = getSearchValue(); File excelFile = orderService.getexportexcel(id,map); InputStream is = n ...

  3. dom4j解析xml时报出文件提前结束

    在写javaweb小项目的时候,用dom4j解析xml报出如下错误: org.dom4j.DocumentException:Error    .......    Nested exception: ...

  4. 如何写出优雅的 Golang 代码

    原文: https://draveness.me/golang-101.html Go 语言是一门简单.易学的编程语言,对于有编程背景的工程师来说,学习 Go 语言并写出能够运行的代码并不是一件困难的 ...

  5. 使用dom4j工具:设置输出格式compactFormat和PrettyPrint(六)

    package dom4j_write; import java.io.File; import java.io.FileOutputStream; import java.io.OutputStre ...

  6. 参考sectools,每个人至少查找5种安全工具、库等信息并深入研究至少两种并写出使用教程

    1.Nessus Nessus是免费网络漏洞扫描器,它可以运行于几乎所有的UNIX平台之上.它不仅能永久升级,还免费提供多达11000种插件(但需要注册并接受EULA-acceptance--终端用户 ...

  7. 用DOM和DOM4J写xml文件时,怎样设置xml文档的编码

    //在将xml文档传输出去时,利用Transformer中的setOutputProperty方法 TransformerFactory trans = TransformerFactory.newI ...

  8. Objective-C写出Json文件(可作配置文件)

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "PingFang SC"; color: #008f00 } span. ...

  9. 通过dom4j写.xml文件

    步骤: 1.左键选中src,点击红圈2: 2.新建类: 3.开始写代码: package com.bjsxt.xml; import java.io.File; import java.io.File ...

随机推荐

  1. 在deeping上安装mariadb

    1,安装的官网参考:有安装的命令和指导https://downloads.mariadb.org/mariadb/repositories/#distro=Debian&distro_rele ...

  2. Leetcode6. Z 字形变换

    > 简洁易懂讲清原理,讲不清你来打我~ 输入字符串,按下右上下右上排列后输出字符串![在这里插入图片描述](https://img-blog.csdnimg.cn/4578280a7c1848c ...

  3. 一张图概括mysql的各种join用法

  4. 【动态规划】合唱队形 luogu-

    分析 做两遍最长上升子序列,在遍历一下,取最大值. AC代码 #include <bits/stdc++.h> using namespace std; #define ms(a,b) m ...

  5. LinuxMint 19/Ubuntu 19.10重置开始菜单以及任务栏

    ====================== 问题:任务栏以及开始菜单弄不见了 解决方法: 快捷键打开终端,输入重置命令: dconf reset -f /

  6. [NOI 2021] 轻重边 题解

    提供一种和不太一样的树剖解法(一下考场就会做了qwq),尽量详细讲解. 思路 设重边为黑色,轻边为白色. 首先,先将边的染色转化为点的染色(即将 \(u\) 节点连向父节点的边的颜色转化为 \(u\) ...

  7. 常见的BI软件有哪些_BI工具软件哪个好用

    世界越来越以数据的驱动.数据分析是帮助企业深入了解自身业务表现(例如正在做什么或哪块业务需要注意和改进)的重要元素.为了获得更直观的展现,数据分析软件可帮助公司通过报告.数据可视化.应用程序等从数据中 ...

  8. 浏览器不支持promise的finally

    IE浏览器以及edge浏览器的不支持es6里面promise的finally 解决方法: 1.npm install axios promise.prototype.finally --save 2. ...

  9. Python - dict 字典常见方法

    字典详解 https://www.cnblogs.com/poloyy/p/15083781.html get(key) 作用 指定键,获取对应值 两种传参 dict.get(key):键存在则返回对 ...

  10. Java学习常用链接

    最全的Jenkins插件开发教程 最最最全的Jenkins插件开发教程_邪恶八进制-CSDN博客_jenkins插件开发 代理FQ工具Shadow socks https://www.blog-chi ...