java dom4j写入XML
引用的两个jar包
dom4j-1.6.1.jar
jaxen.jar
//=========================代码
import java.io.FileWriter;
import java.util.List;
import org.dom4j.*;
import org.dom4j.io.*;
public class TestDom4 {
public static void main(String[] args) {
Test();
}
public static void Test() {
String fileName = System.getProperty("user.dir")+ "\\LoaneeProduct.xml"; // 当前路径下的demo.xml
try {
SAXReader reader = new SAXReader();
Document doc = reader.read(fileName); // 加载xml文件
List peoples = null;
Element products = null;
try {
products = (Element) doc.selectSingleNode("./products"); // 选择所有具有name属性的节点(即demo.xml中的所有card节点)
} catch (Exception ex) {
System.out.println("异常信息:" + ex);
}
products.addElement("product").addAttribute("type", "cp");
// .addText("第六个产品");
Element a = (Element) products
.selectSingleNode("(//product)[last()]");
a.addElement("id").addAttribute("type", "3").addText("222");
a.addElement("name").addAttribute("type", "3").addText("第六个产品");
// Node node = doc.selectSingleNode("(//question)[last()]/@id");
/*
* products.addElement("email").addAttribute("type",
* "私人").addCDATA("private@some-domain.com"); //设置CDATA内容
*/
// 将上述改动保存到文件demo2.xml
FileWriter fileWriter = new FileWriter(
System.getProperty("user.dir") + "\\LoaneeProduct.xml");
OutputFormat format = OutputFormat.createPrettyPrint(); // 设置美观的缩进格式,便于阅读
format.setEncoding("gb2312"); // 设置文本格式
// format = OutputFormat.createCompactFormat();//设置紧凑格式(消除多余空格),便于下载
XMLWriter writer = new XMLWriter(System.out, format);
writer.setWriter(fileWriter);
writer.write(doc);
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
//===========================XML 结构
<?xml version="1.0" encoding="gb2312"?>
<products>
<product>
<id>78</id>
<name>悟能月付3.0</name>
</product>
<product>
<id>220</id>
<name>东方步云</name>
</product>
<product>
<id>35</id>
<name>畜牧贷</name>
</product>
<product>
<id>176</id>
<name>瑞恩传媒</name>
</product>
<product>
<id>199</id>
<name>借东风-凯琦</name>
</product>
<product type="cp">
<id type="3">222</id>
<name type="3">第六个产品</name>
</product>
<product type="cp">
<id type="3">222</id>
<name type="3">第六个产品</name>
</product>
</products>
java dom4j写入XML的更多相关文章
- Java DOM4J读取XML
DOM4J是dom4j.org出品的一个开源XML解析包.Dom4j是一个易用的.开源的库,用于XML,XPath和XSLT.它应用于Java平台,採用了Java集合框架并全然支持DOM,SAX和JA ...
- [JavaWeb基础] 031.dom4j写入xml的方法
上一篇我们讲述了dom4j读取xml的4种方法,甚是精彩,那么怎么样写入xml呢?我们直接看下源码实现. public static void main(String[] args) throws E ...
- java dom4j解析xml实例(2)
java利用dom4j解析xml 需要的jar包: dom4j官方网站在 http://www.dom4j.org/ 下载dom4j-1.6.1.zip 解开后有两个包,仅操作XML文档的话把dom4 ...
- java dom4j解析xml实例
java利用dom4j解析xml 需要的jar包: dom4j官方网站在 http://www.dom4j.org/ 下载dom4j-1.6.1.zip 解开后有两个包,仅操作XML文档的话把dom4 ...
- java DOM4J 读取XML
最近学习Java,在处理XML文档的时候,查阅相关资料,发现了DOM4J这个jre库,相对C#的XML处理来说,功能还算是跟得上 下面展示一篇我自己写的一个XML读取测试 import java.ut ...
- java dom4j解析xml实例(3)
代码运行前需要先导入dom4j架包. 需要解析的XML文件test.xml如下: <students> <student age="25"><!--如 ...
- 深入浅出Java Dom4j读取XML
在以前自己使用的xml较少,只是了解其很强大,现在可算是在DRP中,真正的开始使用它了,以前只是简单的理解xml,xml即可扩展标记语言,简单的使用,具体是什么?怎么用?还是一直让自己期待的. 首先来 ...
- JAVA DOM4j解析XML数据到自定义javabean
我们获取xml中的数据,一般以面向对象的思想去处理这些数据.因此,我们需要自定义类来封装解析出来的数据,以方便我们操作这些数据. 自定义的java类,称为javabean. 自定义Contact类代码 ...
- 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 ...
随机推荐
- WeakHashMap 理解笔记
An entry in a WeakHashMap will automatically be removed when its key is no longer in ordinary use. M ...
- 使用node.js的bodyParser中间件读取post数据解析
昨天我们使用的网关转发数据时出了点问题! 情景是这样的,另一方以Post的形式向我的node.js服务推送JSON数据.但是使用bodyParser中间件后,在req.body中拿不到任何信息. 代码 ...
- mssql全文索引
在使用全文索引的时候例如: SELECT [PRID] ,[PRCode] ,[PRDesc] FROM [test1].[dbo].[PerformanceIssue] where contains ...
- js中将字符串转换成json的三种方式
1,eval方式解析,恐怕这是最早的解析方式了.如下: function strToJson(str){ var json = eval('(' + str + ')'); return json; ...
- 转:ASP.NET MVC3 Model验证总结
http://www.wyjexplorer.cn/Post/2012/8/3/model-validation-in-aspnet-mvc3 ASP.NET MVC3中的Model是自验证的,这是通 ...
- H264关于RTP协议的实现
完整的C/S架构的基于RTP/RTCP的H.264视频传输方案.此方案中,在服务器端和客户端分别进行了功能模块设计. 服务器端:RTP封装模块主要是对H.264码流进行打包封装:RTCP分析模块负责产 ...
- 【转】深入理解TextView实现Rich Text--在同一个TextView设置不同字体风格
深入理解TextView实现Rich Text--在同一个TextView设置不同字体风格 作者: 字体:[增加 减小] 类型:转载 本篇文章是对Android中在同一个TextView中设置不同 ...
- 使用iptables防火墙限制web的访问PV
使用iptables防火墙限制web的访问PV #!/bin/bash while true;do awk '{print $1}' /tmp/test/access.log| grep -v &qu ...
- How to Detect and Track Object With OpenCV
http://www.intorobotics.com/how-to-detect-and-track-object-with-opencv/
- PHP中用下划线开头的变量含义
http://blog.csdn.net/zlking02/article/details/6752256 一个下划线是私有变量以及私有方法两个下划线是PHP内置变量. https://segment ...