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 ...
随机推荐
- php curl多线程抓取网页
PHP 利用 Curl Functions 可以完成各种传送文件操作,比如模拟浏览器发送GET,POST请求等等,受限于php语言本身不支持多线程,所以开发爬虫程序效率并不高,这时候往往需 要借助Cu ...
- IE下载时提示无法下载,重试后成功
// Add Excel as content type and attachment Response.ContentType = “application/vnd.ms-excel”; Res ...
- 【Algorithm】堆排,C++实现
对一个数组中的元素按照顺序构建二叉树,就形成了一个(二叉)堆.(二叉树是虚拟的,并不是真的建立二叉树) 表示堆的数组A有两个重要属性:A.heapSize,表示堆里面有多少元素,数组里有多少元素在堆里 ...
- Java学习-018-EXCEL 文件写入实例源代码
众所周知,EXCEL 也是软件测试开发过程中,常用的数据文件导入导出时的类型文件之一,此文主要讲述如何通过 EXCEL 文件中 Sheet 的索引(index)或者 Sheet 名称获取文件中对应 S ...
- http://www.cnblogs.com/dumuqiao/p/3654702.html?utm_source=tuicool&utm_medium=referral
http://www.cnblogs.com/dumuqiao/p/3654702.html?utm_source=tuicool&utm_medium=referral
- C# base和this
• 是否可以在静态方法中使用base和this,为什么? • base常用于哪些方面?this常用于哪些方面? • 可以base访问基类的一切成员吗? • 如果有三层或者更多继承,那么最下级派生类的b ...
- iOS 使用Xcode和Instruments调试解决iOS内存泄露(链接转)
http://blog.csdn.net/totogo2010/article/details/8233565
- h5固定表头公共样式
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scal ...
- saltstack之(八)配置管理部署LAMP
场景:公司有10台服务器需要安装lamp测试环境,使用saltstack编写state文件进行批量部署,可以提高工作效率,减少人为出错的可能性,保证环境的一致性. saltstack之配置管理lamp ...
- awk实现 文本内的换行符 为分隔符,输出变为逗号
awk实现 文本内的换行符 为分隔符,输出变为逗号 [liujianzuo@ow2 scripts]$ awk -F $ '{print $0}' ldap_member.log ruanshujun ...