Module  java.xml
软件包  org.xml.sax

Interface Parser

  • 所有已知实现类:
    XMLReaderAdapter

    已过时。
    该接口已被SAX2 XMLReader接口所取代,其中包括Namespace支持。

    @Deprecated(since="1.5")
    public interface Parser
    SAX(Simple API for XML)解析器的基本界面。
    This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.

    这是SAX1的主要事件供应商界面; 它已在SAX2中被XMLReader所替代,其中包括Namespace支持和复杂的可配置性和可扩展性。

    所有SAX1解析器都必须实现此基本界面:它允许应用程序注册不同类型事件的处理程序,并从URI或字符流启动解析。

    所有SAX1解析器还必须实现零参数构造函数(尽管也允许其他构造函数)。

    SAX1解析器是可重复使用但不重入的:一旦第一个解析成功完成,应用程序可能重用一个解析器对象(可能有一个不同的输入源),但它可能不会在解析中递归地调用parse()方法。

    从以下版本开始:
    1.4,SAX 1.0
    另请参见:
    EntityResolverDTDHandlerDocumentHandlerErrorHandlerHandlerBaseInputSource
    • 方法详细信息

      • setLocale

        void setLocale​(Locale locale)
                throws SAXException
        已过时。
        允许应用程序请求区域设置错误和警告。

        SAX解析器不需要为错误和警告提供本地化; 但是,如果他们无法支持所请求的区域设置,则必须抛出SAX异常。 应用程序可能不会在解析过程中请求区域设置更改。

        参数
        locale - Java Locale对象。
        异常
        SAXException - 如果不支持请求的区域设置,则抛出异常(使用上一个或默认区域设置)。
        另请参见:
        SAXExceptionSAXParseException
      • setEntityResolver

        void setEntityResolver​(EntityResolver resolver)
        已过时。
        允许应用程序注册自定义实体解析器。

        如果应用程序没有注册实体解析器,SAX解析器将解析系统标识符并打开与实体本身的连接(这是HandlerBase中实现的默认行为)。

        应用程序可以在解析过程中注册新的或不同的实体解析器,SAX解析器必须立即开始使用新的解析器。

        参数
        resolver - 解析实体的对象。
        另请参见:
        EntityResolverHandlerBase
      • setDTDHandler

        void setDTDHandler​(DTDHandler handler)
        已过时。
        允许应用程序注册DTD事件处理程序。

        如果应用程序没有注册DTD处理程序,SAX解析器报告的所有DTD事件将被默认忽略(这是由HandlerBase实现的默认行为)。

        应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。

        参数
        handler - DTD处理程序。
        另请参见:
        DTDHandlerHandlerBase
      • setDocumentHandler

        void setDocumentHandler​(DocumentHandler handler)
        已过时。
        允许应用程序注册文档事件处理程序。

        如果应用程序没有注册文档处理程序,SAX解析器报告的所有文档事件将被默认忽略(这是由HandlerBase实现的默认行为)。

        应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。

        参数
        handler - 文档处理程序。
        另请参见:
        DocumentHandlerHandlerBase
      • setErrorHandler

        void setErrorHandler​(ErrorHandler handler)
        已过时。
        允许应用程序注册错误事件处理程序。

        如果应用程序没有注册错误事件处理程序,SAX解析器报告的所有错误事件将被默认忽略,除了fatalError,这将抛出一个SAXException(这是由HandlerBase实现的默认行为)。

        应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。

        参数
        handler - 错误处理程序。
        另请参见:
        ErrorHandlerSAXExceptionHandlerBase
      • parse

        void parse​(String systemId)
            throws SAXException,
                   IOException
        已过时。
        从系统标识符(URI)解析XML文档。

        该方法是从系统标识符读取文档的常见情况的快捷方式。 它完全相当于以下内容:

          parse(new InputSource(systemId)); 

        如果系统标识符是URL,则应用程序在将其传递给解析器之前必须完全解析。

        参数
        systemId - 系统标识符(URI)。
        异常
        SAXException - 任何SAX异常,可能包含另一个异常。
        IOException - 解析器的IO异常,可能来自应用程序提供的字节流或字符流。
        另请参见:
        parse(org.xml.sax.InputSource)