[导入] xml文件解析-DOM4J
2008-05-08 15:02
411 查看
网站:JavaEye作者:yuping322发表时间:2007-08-2218:10此文章来自于http://www.JavaEye.com
声明:本文系JavaEye网站原创文章,未经JavaEye网站或者作者本人书面许可,任何其他网站严禁擅自发表本文,否则必将追究法律责任!
原文链接:http://yuping.javaeye.com/blog/115336
声明:本文系JavaEye网站原创文章,未经JavaEye网站或者作者本人书面许可,任何其他网站严禁擅自发表本文,否则必将追究法律责任!
原文链接:
1.读取并解析XML文档: 读写XML文档主要依赖于org.dom4j.io包,其中提供
根据本人自己的经验,读取的字符编码是按照XML文件头定义的编码来转换。如果遇到乱码问题,注意要把各处的编码名称保持一致即可。 2.取得Root节点 读取后的第二步,就是得到Root节点。熟悉XML的人都知道,一切XML分析都是从Root元素开始的。
ListchildrenList=elt.elements(); ListchildrenList=elt.elements("student"); ElementeltChild=elt.element("student"); 2.3.访问属性 ListattrList=elt.attributes(); Attributeattr=elt.attribute("sn"); StringattrValue=elt.attributeValue("sn"); 2.4.删除元素和属性 ElementeltStu=root.element("student"); root.remove(eltstu); -------------------------------- etl.remove(elt.attribute("sn")); 3.遍历XML树 DOM4J提供至少3种遍历节点的方法: 1)枚举(Iterator)
递归也可以采用Iterator作为枚举手段,但文档中提供了另外的做法
最令人兴奋的是DOM4J对Visitor的支持,这样可以大大缩减代码量,并且清楚易懂。了解设计模式的人都知道,Visitor是GOF设计模式之一。其主要原理就是两种类互相保有对方的引用,并且一种作为Visitor去访问许多Visitable。我们来看DOM4J中的Visitor模式(快速文档中没有提供) 只需要自定一个类实现Visitor接口即可。
注意,这个Visitor是自动遍历所有子节点的。如果是root.accept(MyVisitor),将遍历子节点。我第一次用的时候,认为是需要自己遍历,便在递归中调用Visitor,结果可想而知。 4.XPath支持 DOM4J对XPath有良好的支持,如访问一个节点,可直接用XPath选择。
[align=left]有时候经常要用到字符串转换为XML或反之,[/align]
一般创建XML是写文件前的工作,这就像StringBuffer一样容易。
一个简单的输出方法是将一个Document或任何的Node通过write方法输出
如果你想改变输出的格式,比如美化输出或缩减格式,可以用XMLWriter类
|
相关文章推荐
- 用DOM4j解析xml文件,获得所有节点信息 http://blog.csdn.net/yizhizouxiaqu/archive/2009/12/10/4977122.aspx
- 解析XML文件(二)----使用dom4j方式(三)
- 使用dom4j来解析xml文件的基本操作
- XML_使用dom4j对xml文件进行解析_.flv
- dom4j解析xml和写入xml文件
- 使用dom4j解析xml文件,并封装为javabean对象
- 用Dom4j解析xml文件
- 【java项目实战】dom4j解析xml文件,连接Oracle数据库
- java中采用dom4j解析xml文件
- 使用DOM4J解析 XML文件
- dom4j中使用xpath解析带命名空间的xml文件,取不到节点的解决办法
- Dom4j解析xml文件(入门)
- 使用dom4j解析xml文件,并封装为javabean对象
- Dom4j解析XML文件,用于SQL与Java代码分离实现低耦合
- XML DOM4J解析XML文件
- dom4j解析xml文件
- dom4j解析xml文件,添加新节点,添加节点内容,读取文件中节点内容作为新增节点内容
- DOM4j解析xml文件(SaxReader方法),并抽象实体类
- dom4j解析xml文件 简单例子