dom4j的事件处理模型涉及的类(1个)和接口(2个)。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
类:
SAXReader
方法:
public void addHandler(String path,ElementHandler handler)
功能:当解析到
path指定的路径时,将调用参数handler指定的处理器。针对不同的节点可以添加多个handler实例
接口:
ElementHandler
方法(
2个):
public void onStart(ElementPath path)
功能:该方法在解析到元素的开始标签时被调用。
public void onEnd(ElementPath path)
功能:该方法在解析到元素的结束标签时被调用
接口:
ElementPath (假设有参数:ElementPath path)
方法(
4
个):
public void addHandler(String path,ElementHandler)
功能:该方法与
SAXReader类中的addHandler()方法的作用相同。路径path可以是绝对路径(路径以/开头),也可以是相对路径(假设是当前路径的子节点路径)。
public void removeHandler(String path)
功能:移除指定路径上的
ElementHandler实例。路径可以是相对路径,也可以是绝对路径。
public String getPath()
功能:该方法得到当前节点的路径。
例如:
System.out.println("path:"+path.getPath());
结果是:
path:/students/student/name
由此可见该方法返回的是完整的绝对路径
public Element getCurrent()
功能:该方法得到当前节点。
示例使用的xml文档的内容:
<?
xml
version="1.0" encoding="UTF-8"?>
<?
xml-stylesheet
type="text/xsl" href="students.xsl"?>
<
students
>
<
student
sn="01">
<
name
>
张三
</
name
>
<
age
>
18
</
age
>
</
student
>
<
student
sn="02">
<
name
>
李四
</
name
>
<
age
>
22
</
age
>
</
student
>
</
students
>
转载于:https://blog.51cto.com/hnsyj/304286