java.lang.Object
org.xml.sax.helpers.XMLFilterImpl
- 所有已实现的接口:
ContentHandler
,DTDHandler
,EntityResolver
,ErrorHandler
,XMLFilter
,XMLReader
public class XMLFilterImpl extends Object implements XMLFilter , EntityResolver , DTDHandler , ContentHandler , ErrorHandler
派生 XML 过滤器的基类。
此类旨在位于 XMLReader
和客户端应用程序的事件处理程序之间。默认情况下,它除了将请求传递给读取器并将事件传递给未修改的处理程序外什么也不做,但是子类可以覆盖特定方法以在事件流或配置请求传递时修改它们。
- 自从:
- 1.4, SAX 2.0
- 参见:
-
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述void
characters
(char[] ch, int start, int length) 过滤字符数据事件。void
过滤结束文档事件。void
endElement
(String uri, String localName, String qName) 过滤结束元素事件。void
endPrefixMapping
(String prefix) 过滤结束命名空间前缀映射事件。void
过滤错误事件。void
过滤致命错误事件。获取内容事件处理程序。获取当前 DTD 事件处理程序。获取当前的实体解析器。获取当前错误事件处理程序。boolean
getFeature
(String name) 查找功能的值。获取家长读者。getProperty
(String name) 查找属性的值。void
ignorableWhitespace
(char[] ch, int start, int length) 过滤可忽略的空白事件。void
notationDecl
(String name, String publicId, String systemId) 过滤符号声明事件。void
解析文档。void
parse
(InputSource input) 解析文档。void
processingInstruction
(String target, String data) 过滤处理指令事件。resolveEntity
(String publicId, String systemId) 过滤外部实体解析。void
setContentHandler
(ContentHandler handler) 设置内容事件处理程序。void
setDocumentLocator
(Locator locator) 过滤新的文档定位器事件。void
setDTDHandler
(DTDHandler handler) 设置 DTD 事件处理程序。void
setEntityResolver
(EntityResolver resolver) 设置实体解析器。void
setErrorHandler
(ErrorHandler handler) 设置错误事件处理程序。void
setFeature
(String name, boolean value) 设置特征的值。void
设置父阅读器。void
setProperty
(String name, Object value) 设置属性的值。void
skippedEntity
(String name) 过滤跳过的实体事件。void
过滤启动文档事件。void
startElement
(String uri, String localName, String qName, Attributes atts) 过滤开始元素事件。void
startPrefixMapping
(String prefix, String uri) 过滤一个开始命名空间前缀映射事件。void
unparsedEntityDecl
(String name, String publicId, String systemId, String notationName) 过滤未解析的实体声明事件。void
过滤警告事件。在类 java.lang.Object 中声明的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
在接口 org.xml.sax.ContentHandler 中声明的方法
declaration
-
构造方法详细信息
-
XMLFilterImpl
public XMLFilterImpl()构造一个没有父级的空 XML 过滤器。此过滤器将没有父级:您必须在开始解析或使用 setFeature 或 setProperty 进行任何配置之前分配一个父级,除非您将其用作纯事件使用者而不是
XMLReader
。- 参见:
-
XMLFilterImpl
构造具有指定父级的 XML 过滤器。- 参数:
parent
- 指定的父级- 参见:
-
-
方法详情
-
setParent
设置父阅读器。这是
XMLReader
此过滤器将从中获取其事件并将其配置请求传递到其中。父级本身可能是另一个过滤器。如果没有设置父阅读器,则任何解析或设置或获取功能或属性的尝试都将失败。
-
getParent
获取家长读者。 -
setFeature
public void setFeature(String name, boolean value) throws SAXNotRecognizedException , SAXNotSupportedException 设置特征的值。如果父级为空,这将始终失败。
- 指定者:
setFeature
在接口XMLReader
中- 参数:
name
- 特征名称。value
- 请求的特征值。- 抛出:
SAXNotRecognizedException
- 如果无法从父级分配或检索特征值。SAXNotSupportedException
- 当父母识别特征名称但无法设置请求的值时。- 参见:
-
getFeature
查找功能的值。如果父级为空,这将始终失败。
- 指定者:
getFeature
在接口XMLReader
中- 参数:
name
- 特征名称。- 返回:
- 特征的当前值。
- 抛出:
SAXNotRecognizedException
- 如果无法从父级分配或检索特征值。SAXNotSupportedException
- 当父母识别特征名称但此时无法确定其值时。- 参见:
-
setProperty
public void setProperty(String name, Object value) throws SAXNotRecognizedException , SAXNotSupportedException 设置属性的值。如果父级为空,这将始终失败。
- 指定者:
setProperty
在接口XMLReader
中- 参数:
name
- 属性名称。value
- 请求的属性值。- 抛出:
SAXNotRecognizedException
- 如果无法从父级分配或检索属性值。SAXNotSupportedException
- 当父级识别属性名称但无法设置请求的值时。
-
getProperty
查找属性的值。- 指定者:
getProperty
在接口XMLReader
中- 参数:
name
- 属性名称。- 返回:
- 属性的当前值。
- 抛出:
SAXNotRecognizedException
- 如果无法从父级分配或检索属性值。SAXNotSupportedException
- 当父级识别属性名称但此时无法确定其值时。- 参见:
-
setEntityResolver
设置实体解析器。- 指定者:
setEntityResolver
在接口XMLReader
中- 参数:
resolver
- 新的实体解析器。- 参见:
-
getEntityResolver
获取当前的实体解析器。- 指定者:
getEntityResolver
在接口XMLReader
中- 返回:
- 当前实体解析器,如果未设置则为 null。
- 参见:
-
setDTDHandler
设置 DTD 事件处理程序。- 指定者:
setDTDHandler
在接口XMLReader
中- 参数:
handler
- 新的 DTD 处理程序- 参见:
-
getDTDHandler
获取当前 DTD 事件处理程序。- 指定者:
getDTDHandler
在接口XMLReader
中- 返回:
- 当前的 DTD 处理程序,如果未设置则为 null。
- 参见:
-
setContentHandler
设置内容事件处理程序。- 指定者:
setContentHandler
在接口XMLReader
中- 参数:
handler
- 新的内容处理器- 参见:
-
getContentHandler
获取内容事件处理程序。- 指定者:
getContentHandler
在接口XMLReader
中- 返回:
- 当前内容处理程序,如果未设置则为 null。
- 参见:
-
setErrorHandler
设置错误事件处理程序。- 指定者:
setErrorHandler
在接口XMLReader
中- 参数:
handler
- 新的错误处理程序- 参见:
-
getErrorHandler
获取当前错误事件处理程序。- 指定者:
getErrorHandler
在接口XMLReader
中- 返回:
- 当前错误处理程序,如果未设置则为 null。
- 参见:
-
parse
解析文档。- 指定者:
parse
在接口XMLReader
中- 参数:
input
- 文档实体的输入源。- 抛出:
SAXException
- 任何 SAX 异常,可能包装另一个异常。IOException
- 来自解析器的 IO 异常,可能来自应用程序提供的字节流或字符流。- 参见:
-
parse
解析文档。- 指定者:
parse
在接口XMLReader
中- 参数:
systemId
- 作为完全限定 URI 的系统标识符。- 抛出:
SAXException
- 任何 SAX 异常,可能包装另一个异常。IOException
- 来自解析器的 IO 异常,可能来自应用程序提供的字节流或字符流。- 参见:
-
resolveEntity
public InputSource resolveEntity(String publicId, String systemId) throws SAXException , IOException 过滤外部实体解析。- 指定者:
resolveEntity
在接口EntityResolver
中- 参数:
publicId
- 实体的公共标识符,或为空。systemId
- 实体的系统标识符。- 返回:
- 一个新的 InputSource 或 null 作为默认值。
- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。IOException
- 客户端在获取新的 InputSource 时可能会抛出与 I/O 相关的异常。- 参见:
-
notationDecl
过滤符号声明事件。- 指定者:
notationDecl
在接口DTDHandler
中- 参数:
name
- 符号名称。publicId
- 符号的公共标识符,或 null。systemId
- 表示法的系统标识符,或 null。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException 过滤未解析的实体声明事件。- 指定者:
unparsedEntityDecl
在接口DTDHandler
中- 参数:
name
- 实体名称。publicId
- 实体的公共标识符,或为空。systemId
- 实体的系统标识符,或 null。notationName
- 相关符号的名称。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
setDocumentLocator
过滤新的文档定位器事件。- 指定者:
setDocumentLocator
在接口ContentHandler
中- 参数:
locator
- 文档定位器。- 参见:
-
startDocument
过滤启动文档事件。- 指定者:
startDocument
在接口ContentHandler
中- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
endDocument
过滤结束文档事件。- 指定者:
endDocument
在接口ContentHandler
中- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
startPrefixMapping
过滤一个开始命名空间前缀映射事件。- 指定者:
startPrefixMapping
在接口ContentHandler
中- 参数:
prefix
- 命名空间前缀。uri
- 命名空间 URI。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
endPrefixMapping
过滤结束命名空间前缀映射事件。- 指定者:
endPrefixMapping
在接口ContentHandler
中- 参数:
prefix
- 命名空间前缀。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
startElement
public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException 过滤开始元素事件。- 指定者:
startElement
在接口ContentHandler
中- 参数:
uri
- 元素的命名空间 URI,或空字符串。localName
- 元素的本地名称,或空字符串。qName
- 元素的限定(前缀)名称,或空字符串。atts
- 元素的属性。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
endElement
过滤结束元素事件。- 指定者:
endElement
在接口ContentHandler
中- 参数:
uri
- 元素的命名空间 URI,或空字符串。localName
- 元素的本地名称,或空字符串。qName
- 元素的限定(前缀)名称,或空字符串。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。
-
characters
过滤字符数据事件。- 指定者:
characters
在接口ContentHandler
中- 参数:
ch
- 字符数组。start
- 数组中的起始位置。length
- 数组中要使用的字符数。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
ignorableWhitespace
过滤可忽略的空白事件。- 指定者:
ignorableWhitespace
在接口ContentHandler
中- 参数:
ch
- 字符数组。start
- 数组中的起始位置。length
- 数组中要使用的字符数。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
processingInstruction
过滤处理指令事件。- 指定者:
processingInstruction
在接口ContentHandler
中- 参数:
target
- 处理指令目标。data
- 目标后面的文本。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。
-
skippedEntity
过滤跳过的实体事件。- 指定者:
skippedEntity
在接口ContentHandler
中- 参数:
name
- 跳过的实体的名称。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。
-
warning
过滤警告事件。- 指定者:
warning
在接口ErrorHandler
中- 参数:
e
- 作为异常的警告。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
error
过滤错误事件。- 指定者:
error
在接口ErrorHandler
中- 参数:
e
- 作为异常的错误。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。- 参见:
-
fatalError
过滤致命错误事件。- 指定者:
fatalError
在接口ErrorHandler
中- 参数:
e
- 作为异常的错误。- 抛出:
SAXException
- 客户端可能会在处理过程中抛出异常。
-