由于要保存一些项目中只有一个而且很少改的,用数据库存储太浪费了,用xml保存吧。
1.现在来看下读xml,xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<company>
<tel>020-12345678-66</tel>
<tel>020-12345678-85</tel>
<introduce>
<![CDATA[
<br/><h1>公司简介</h1>
]]>
</introduce>
</company>
2.用dom4j 读,
package cn.rentbus;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
//import java.io.FileWriter;
import java.util.Iterator;
import java.util.List;
import java.util.Random;
import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.Node;
import org.dom4j.io.OutputFormat;
import org.dom4j.io.SAXReader;
import org.dom4j.io.XMLWriter;
public class Dom4jXmlTest extends TestCase {
protected final Log logger = LogFactory.getLog(getClass());
private SAXReader reader;
private Document document;
private File xmlFile;
protected void setUp() throws Exception {
xmlFile = new File("WEB-INF/company.xml");
reader = new SAXReader();
document = reader.read(xmlFile);
}
protected void tearDown() throws Exception {
super.tearDown();
}
public void testReadXml() {
Element root = document.getRootElement();
for ( Iterator i = root.elementIterator( "tel" ); i.hasNext(); ) {
Element tel = (Element) i.next();
logger.info("tel: "+tel.getTextTrim());
// do something
}
logger.info("==== XPath use on tel ====");
List list = document.selectNodes("/company/tel" );
for(Element tel : (List<Element>) list) {
logger.info("tel: "+tel.getTextTrim());
}
for ( Iterator i = root.elementIterator( "introduce" ); i.hasNext(); ) {
Element introduce = (Element) i.next();
logger.info("introduce: "+introduce.getTextTrim());
// do something
}
logger.info("==== XPath use on introduce ====");
Node node = document.selectSingleNode("/company/introduce");
String introduce = node.getText();
logger.info("introduce: "+introduce.trim());
}
}
注意:如果用到XPath,需要jaxen-1.1-beta-6.jar(发本包/lib下有)
我的环境:
dom4j-1.6.1.jar
jaxen-1.1-beta-6.jar
分享到:
相关推荐
DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件DOM4j操作xml文件
dom4j解析xml文件代码示例 dom4j解析xml文件代码示例 dom4j解析xml文件代码示例
dom4j解析XML文件格式dom4j解析XML文件格式dom4j解析XML文件格式
完整的讲解一个dom4j对xml的增删改查
dom4j解析xml文件的压缩包,完整版。对jdom进行了封装。包含源码,jar包以及所需的全部内容。
Dom4j解析XML文档.doc Dom4j解析XML文档.doc Dom4j解析XML文档.doc Dom4j解析XML文档.doc
基于dom4j的读写xml文件的工具包。封装了dom4j操作xml文档的常和方法。 支持两种读写方法。1:针对小文件的读取整个文档,2:针对大文件的,逐行读取。读到几百M文件毫无压力。
该示例实现MAVEN来进行创建的,实现了dom4j操作XML文件,包括创建XML、动态创建XML节点、更新XML节点、删除XML节点。
分别使用DOM和DOM4j解析XML文件,因为目前使用最广泛的是DOM4j所以只写了用DOM4j对XML进行增删改查。
dom4j是非常优秀的xml解析包,操作起来读写xml非常方便。把自己写的一个读写dom4j.xml实例共享给大家
一个关于用dom4j解析xml,遍历xml,建立xml的简单例子
使用dom4j 将xml文件中的数据导入到数据库中,包含xml文件和连接数据库文件,能够运行。 (1)用eclipse创建一个简单的java project (2)导入所需要的包 (3)编写DBUtil.java 连接数据库 (4)编写xml文件 ...
详细介绍了使用Dom4j进行xml文件的读取方法
自己写的一个dom4j解析xml文件工具类
使用DOM4J对XML文件操作-添加、修改、删除、获取元素节点
Dom4j解析Xml文件源码 源码描述: 一、源码介绍 通过dom4j解析自定义xml文件 二、主要功能 自定义xml文件,自定义实体,通过dom4j解析出该xml的demo 三、注意事项 开发环境为jdk1.8,无数据库
NULL 博文链接:https://sxpujs.iteye.com/blog/375485
1、xml文档解析 2、 dom4j解析xml 3、实现xml文件解析 xml字符串解析 xml MAP键值对解析 4、实现xml写入与生成文件
很详细的文档 可以借鉴下 希望对你有帮助
dom4j 解析xml文件小例子 dom4j 解析xml文件小例子