你的位置:首页 > 软件开发 > Java > 1、DOM4J简介

1、DOM4J简介

发布时间:2015-04-12 19:01:36
1、DOM4J简介 DOM4J是 dom4j.org 出品的一个开源 DOM4J 使用起来非常简单。只要你了解基本的 Dom:把整个文档作为一个对象。 DOM4J 最大的特色是使用大量的接口。它的主要接口都在org. ...

1、DOM4J简介

    DOM4J是 dom4j.org 出品的一个开源

    DOM4J 使用起来非常简单。只要你了解基本的

    Dom:把整个文档作为一个对象。

  DOM4J 最大的特色是使用大量的接口。它的主要接口都在org.dom4j里面定义:

魂牵梦萦

魂牵梦萦

魂牵梦萦

Attribute

定义了

Branch

指能够包含子节点的节点。如

CDATA

定义了

CharacterData

是一个标识接口,标识基于字符的节点。如CDATA,Comment, Text.

Comment

定义了

Document

定义了

DocumentType

定义

Element

定义

ElementHandler

定义了Element 对象的处理器

ElementPath

被 ElementHandler 使用,用于取得当前正在处理的路径层次信息

Entity

定义

Node

为dom4j中所有的

NodeFilter

定义了在dom4j 节点中产生的一个滤镜或谓词的行为(predicate)

ProcessingInstruction

定义

Text

定义

Visitor

用于实现 Visitor模式

XPath

在分析一个字符串后会提供一个 XPath 表达式

接口之间的继承关系如下:

interface java.lang.Cloneable

    interface org.dom4j.Node

           interface org.dom4j.Attribute

           interface org.dom4j.Branch

                  interface org.dom4j.Document

                  interface org.dom4j.Element

           interface org.dom4j.CharacterData

                  interface org.dom4j.CDATA

                  interface org.dom4j.Comment

                  interface org.dom4j.Text

           interface org.dom4j.DocumentType

           interface org.dom4j.Entity

           interface org.dom4j.ProcessingInstruction

2、

2.1、读取

     读写

public static Document load(String filename) {

Document document = null;

try {

SAXReader saxReader = new SAXReader();

document = saxReader.read(new File(filename));  //读取

} catch (Exception ex) {

ex.printStackTrace();

}

return document;

}  

public static Document load(URL url) {

Document document = null;

try {

SAXReader saxReader = new SAXReader();

document = saxReader.read(url);  //读取

} catch (Exception ex) {

ex.printStackTrace();

}

return document;

}

//读取指定的

2.2、获取根节点

根节点是

Document dom = load(path + "/" + file);

Element root = dom.getRootElement();

2.3、. 新增一个节点以及其下的子节点与数据

Element menuElement = root.addElement("menu");

Element engNameElement = menuElement.addElement("engName");

engNameElement.setText(catNameEn);

Element chiNameElement = menuElement.addElement("chiName");

chiNameElement.setText(catName);

2.4、 写入

注意文件操作的包装类是乱码的根源

public static boolean doc2
boolean flag = true;
try {
writer.write(document);
writer.close();
} catch (Exception ex) {
flag = false;
ex.printStackTrace();
}
System.out.println(flag);
return flag;
}
 
    Dom4j通过将Document对象表示的写入指定的文件,并使用OutputFormat格式对象指定写入的风格和编码方法。调用OutputFormat.createPrettyPrint()方法可以获得一个默认的pretty print风格的格式对象。对OutputFormat对象调用setEncoding()方法可以指定
 
public void writeTo(OutputStream out, String encoding) throws UnsupportedEncodingException, IOException {
       OutputFormat format = OutputFormat.createPrettyPrint();

原标题:1、DOM4J简介

关键词:dom

dom
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。