所有类
|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
org.xml.sax.helpers
类 DefaultHandler
java.lang.Object org.xml.sax.helpers.DefaultHandler
- 所有已实现的接口:
- ContentHandler, DTDHandler, EntityResolver, ErrorHandler
- 直接已知子类:
- DefaultHandler2
-
public class DefaultHandler
- extends Object
- implements EntityResolver, DTDHandler, ContentHandler, ErrorHandler
SAX2 事件处理程序的默认基类。
此模块(包括源代码和文档)位于公共域中,对该模块不提供担保。有关更多信息,请参阅http://www.saxproject.org。
此类可用作 SAX2 应用程序的有用基类:它提供四个核心 SAX2 处理程序类中的所有回调的默认实现:
应用程序编写者可以在他们仅需实现部分接口时扩展此类;当应用程序尚未提供其自己的处理程序时解析器编写者可通过实例化此类来提供默认的处理程序。
此类替换不推荐使用的 SAX1 HandlerBase
类。
- 从以下版本开始:
- SAX 2.0
- 另请参见:
EntityResolver
,DTDHandler
,ContentHandler
,ErrorHandler
构造方法摘要 | |
---|---|
DefaultHandler() |
方法摘要 | |
---|---|
void |
characters(char[] ch, int start, int length) 接收元素中字符数据的通知。 |
void |
endDocument() 接收文档结束的通知。 |
void |
endElement(String uri, String localName, String qName) 接收元素结束的通知。 |
void |
endPrefixMapping(String prefix) 接收名称空间映射结束的通知。 |
void |
error(SAXParseException e) 接收可恢复的解析器错误的通知。 |
void |
fatalError(SAXParseException e) 报告严重的 XML 解析错误。 |
void |
ignorableWhitespace(char[] ch, int start, int length) 接收元素内容中可忽略空白的通知。 |
void |
notationDecl(String name, String publicId, String systemId) 接收注释声明的通知。 |
void |
processingInstruction(String target, String data) 接收处理指令的通知。 |
InputSource |
resolveEntity(String publicId, String systemId) 解析外部实体。 |
void |
setDocumentLocator(Locator locator) 接收文档事件的 Locator 对象。 |
void |
skippedEntity(String name) 接收跳过的实体的通知。 |
void |
startDocument() 接收文档开始的通知。 |
void |
startElement(String uri, String localName, String qName, Attributes attributes) 接收元素开始的通知。 |
void |
startPrefixMapping(String prefix, String uri) 接收名称空间映射开始的通知。 |
void |
unparsedEntityDecl(String name, String publicId, String systemId, String notationName) 接收未解析实体声明的通知。 |
void |
warning(SAXParseException e) 接收解析器警告的通知。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
DefaultHandler
public DefaultHandler()
方法详细信息 |
---|
resolveEntity
public InputSource resolveEntity(String publicId, String systemId) throws IOException, SAXException
-
解析外部实体。
将始终返回 null,因此解析器将使用 XML 文档中提供的系统标识符。此方法实现 SAX 默认的行为:应用程序编写者可以在子类中重写它以便进行诸如目录查找或 URI 重定向之类的特定转换。
-
- 指定者:
-
接口
EntityResolver
中的resolveEntity
-
- 参数:
publicId
- 公共标识符,如果没有可用的,则为 null。systemId
- 在 XML 文档中提供的系统标识符。- 返回:
- 新的输入源,或返回 null,以要求默认的行为。
- 抛出:
IOException
- 如果在设置新的输入源时发生错误。SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
EntityResolver.resolveEntity(java.lang.String, java.lang.String)
notationDecl
public void notationDecl(String name, String publicId, String systemId) throws SAXException
-
接收注释声明的通知。
默认情况下,不执行任何操作。如果应用程序编写者希望跟踪在文档中声明的注释,则可以在子类中重写此方法。
-
- 指定者:
-
接口
DTDHandler
中的notationDecl
-
- 参数:
name
- 注释名称。publicId
- 注释公共标识符,如果没有可使用的则为 null。systemId
- 注释系统标识符。- 抛出:
SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
unparsedEntityDecl
public void unparsedEntityDecl(String name, String publicId, String systemId, String notationName) throws SAXException
-
接收未解析实体声明的通知。
默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便跟踪在文档中声明的未解析实体。
-
- 指定者:
-
接口
DTDHandler
中的unparsedEntityDecl
-
- 参数:
name
- 实体名称。publicId
- 实体公共标识符,如果不可用,则为 null。systemId
- 实体系统标识符。notationName
- 相关联的注释的名称。- 抛出:
SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
setDocumentLocator
public void setDocumentLocator(Locator locator)
-
接收文档事件的 Locator 对象。
默认情况下,不执行任何操作。如果应用程序编写者希望存储定位器以用于其他的文档事件,则可以在子类中重写此方法。
-
- 指定者:
-
接口
ContentHandler
中的setDocumentLocator
-
- 参数:
locator
- 用于所有 SAX 文档事件的定位器。- 另请参见:
ContentHandler.setDocumentLocator(org.xml.sax.Locator)
,Locator
startDocument
public void startDocument() throws SAXException
-
接收文档开始的通知。
默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在文档的开始采取特定的措施(如分配树的根节点或创建输出文件)。
-
- 指定者:
-
接口
ContentHandler
中的startDocument
-
- 抛出:
SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
ContentHandler.startDocument()
endDocument
public void endDocument() throws SAXException
-
接收文档结束的通知。
默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在文档的结束处采取特定的操作(如,结束树或关闭输出文件)。
-
- 指定者:
-
接口
ContentHandler
中的endDocument
-
- 抛出:
SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
ContentHandler.endDocument()
startPrefixMapping
public void startPrefixMapping(String prefix, String uri) throws SAXException
-
接收名称空间映射开始的通知。
默认情况下,不执行任何操作。应用程序编写者可以在子类中重写此方法,以便在每个名称空间前缀范围的开始处采取特定的操作(如存储前缀映射)。
-
- 指定者:
-
接口
ContentHandler
中的startPrefixMapping
-
- 参数:
prefix
- 正在声明的名称空间前缀。uri
- 映射到前缀的名称空间 URI。- 抛出:
SAXException
- 任何 SAX 异常,可能包装另外的异常。- 另请参见:
ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)