dom4j读写XML文件
XML文件格式:
<?xml version="1.0" encoding="UTF-8"?>
<company>
<employee name="zhangsan" value="张三"/>
<employee name="lisi" value="李四"/>
<employee name="wangwu" value="王五"/>
</company>
dom4j读写方法:
/**
* 读取
*/
public static void read() {
try {
File xmlFile = new File("d://company.xml");
Document document = new SAXReader().read(xmlFile);
List<Element> elements = document.selectNodes("/company/employee");
for (Element element : elements) {
String name = element.attributeValue("name");
String value = element.attributeValue("value");
System.out.println(name + " = " + value);
}
} catch (Exception e) {
e.printStackTrace();
}
} /**
* 写入
*/
public static void write() {
FileOutputStream fileOutputStream = null;
XMLWriter xmlWriter = null;
try {
File xmlFile = new File("d://company.xml");
Document document = new SAXReader().read(xmlFile);
// 获取根节点
Element root = document.getRootElement();
// 动态添加 <employee name="xiaohong" value="小红"/>
Element employee = root.addElement("employee");
employee.addAttribute("name", "xiaohong");
employee.addAttribute("value", "小红");
OutputFormat outputFormat = OutputFormat.createPrettyPrint();
outputFormat.setEncoding("UTF-8");
outputFormat.setIndent(true);
outputFormat.setIndent(" ");// tab格
outputFormat.setNewlines(true);// 换行
fileOutputStream = new FileOutputStream(xmlFile);
xmlWriter = new XMLWriter(fileOutputStream, outputFormat);
xmlWriter.write(document);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (xmlWriter != null) {
try {
xmlWriter.close();
} catch (IOException e) {
}
}
} }
写入后XML格式:
<?xml version="1.0" encoding="UTF-8"?> <company>
<employee name="zhangsan" value="张三"/>
<employee name="lisi" value="李四"/>
<employee name="wangwu" value="王五"/>
<employee name="xiaohong" value="小红"/>
</company>
注:所需包 dom4j-1.6.1.jar、jaxen-1.1.1.jar
dom4j读写XML文件的更多相关文章
- Java实现——Dom4j读写XML文件
1. dom4j概述 解析DOM4J是一个开源XML解析包,采用了Java集合框架并完全支持DOM,SAX和JAXP. 最大的特色是使用了大量的接口,主要接口都在org.dom4j里定义. 2. do ...
- Java 读写XML文件 API--org.dom4j
om4j是一个Java的XML API,类似于jdom,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,同时它也是一个开放源代码的软件 ...
- Dom4j下载及使用Dom4j读写XML简介
sitinspring(如坐春风)原创,转载请注明作者及出处. 要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4 ...
- 1.使用dom4j解析XML文件
一.dom4j的简介 dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它 ...
- Java进阶(二十七)使用Dom4j解析XML文件
使用Dom4j解析XML文件 写在前面的话 由于论文实验要求,需要实现操作XML文档,为此想到了dom4j这个工具,使用之后深感受益.在此分享给大家,以此共勉. 注:本文转载自http://blog. ...
- Dom4j下载及使用Dom4j读写XML简介(转)
Dom4j下载及使用Dom4j读写XML简介 要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4j包下载地址:ht ...
- 【java项目实战】dom4j解析xml文件,连接Oracle数据库
简单介绍 dom4j是由dom4j.org出品的一个开源XML解析包.这句话太官方.我们还是看一下官方给出的解释.例如以下图: dom4j是一个易于使用的.开源的,用于解析XML,XPath和XSLT ...
- dom4j读写XML文档
dom4j 最常用最简单的用法(转) 要使用dom4j读写XML文档,需要先下载dom4j包,dom4j官方网站在 http://www.dom4j.org/目前最新dom4j包下载地址:http:/ ...
- 【DRP】採用dom4j完毕XML文件导入数据库
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/lantingxv_jing/article/details/37762523 xml文件在如 ...
随机推荐
- jQuery操作控件
在项目中添加前台控件radio,操作两个div的显示和隐藏,其实是一个很简单的问题,但是费了老大劲才完成,也就是jQuery操作控件的一些基础知识.方法有三种,简单介绍: 1.给元素设置style属性 ...
- WPF控件模板
引言:在进行WPF项目开发过程中,由于项目的需要,经常要对某个控件进行特殊的设定,其中就牵涉到模板的相关方面的内容.本文也是在自己进行项目开发过程中遇到控件模板设定时集中搜集资料后整理出来的,以供在以 ...
- Java控制语句——break和continue
在任何循环语句的主体部分,均可用break控制循环的流程. break用于强行退出循环,不执行循环中剩余的语句.(break语句还可用于多支语句switch中) continue 语句用于循环语句体中 ...
- yaffs文件系统
1. 概述yaffs文件系统专为Nandflash设计的日志文件系统,占用page中oob区域.目前有两个版本的yaffs文件系统.nandflash不可靠,存在坏块,存在数据错误,需要软件弥补纠正此 ...
- BCP及自增标识列
10:58 2012-12-20 通过BCP命令导入导出数据 bcp "test.dbo.lxy133" out d:\lxy133.txt -SMSSQL$SQL08R2 -Us ...
- MySQLdb模块 类操作方法
#!/usr/bin/env python #-*- coding:utf- -*- from day5 import conf import MySQLdb class MysqlHepler(ob ...
- Chrome模拟手机浏览网页
用Chrome模拟手机浏览网页,只需要编辑一个命令就可以实现 C:\Users\xxx\AppData\Local\Google\Chrome\Application\chrome.exe --use ...
- PostgreSQL9.1 upgrade to PostgreSQL9.5rc1
PostgreSQL9.1.0 upgrade to PostgreSQL9.5rc1 安装PG9.1端口为5432 [pgup@minion1 pg]$ ls postgresql-9.1.0.ta ...
- Lintcode: Expression Evaluation (Basic Calculator III)
Given an expression string array, return the final result of this expression Have you met this quest ...
- JS语法部分-数组
数组的长度是动态变化的,里面可以防止任意类型的元素 var a=new Array() 数组元素的复制:a[0]=123 a[2]=456 数组的取值:a[i] 数组的属性: a.le ...