-
- 所有已知实现类:
-
XMLReaderAdapter
已过时。该接口已被SAX2XMLReader接口所取代,其中包括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
- 另请参见:
-
EntityResolver,DTDHandler,DocumentHandler,ErrorHandler,HandlerBase,InputSource
-
-
方法摘要
所有方法 接口方法 抽象方法 弃用的方法 Modifier and Type 方法 描述 voidparse(String systemId)已过时。从系统标识符(URI)解析XML文档。voidparse(InputSource source)已过时。解析一个XML文档。voidsetDocumentHandler(DocumentHandler handler)已过时。允许应用程序注册文档事件处理程序。voidsetDTDHandler(DTDHandler handler)已过时。允许应用程序注册DTD事件处理程序。voidsetEntityResolver(EntityResolver resolver)已过时。允许应用程序注册自定义实体解析器。voidsetErrorHandler(ErrorHandler handler)已过时。允许应用程序注册错误事件处理程序。voidsetLocale(Locale locale)已过时。允许应用程序请求区域设置错误和警告。
-
-
-
方法详细信息
-
setLocale
void setLocale(Locale locale) throws SAXException
已过时。允许应用程序请求区域设置错误和警告。SAX解析器不需要为错误和警告提供本地化; 但是,如果他们无法支持所请求的区域设置,则必须抛出SAX异常。 应用程序可能不会在解析过程中请求区域设置更改。
- 参数
-
locale- Java Locale对象。 - 异常
-
SAXException- 如果不支持请求的区域设置,则抛出异常(使用上一个或默认区域设置)。 - 另请参见:
-
SAXException,SAXParseException
-
setEntityResolver
void setEntityResolver(EntityResolver resolver)
已过时。允许应用程序注册自定义实体解析器。如果应用程序没有注册实体解析器,SAX解析器将解析系统标识符并打开与实体本身的连接(这是HandlerBase中实现的默认行为)。
应用程序可以在解析过程中注册新的或不同的实体解析器,SAX解析器必须立即开始使用新的解析器。
- 参数
-
resolver- 解析实体的对象。 - 另请参见:
-
EntityResolver,HandlerBase
-
setDTDHandler
void setDTDHandler(DTDHandler handler)
已过时。允许应用程序注册DTD事件处理程序。如果应用程序没有注册DTD处理程序,SAX解析器报告的所有DTD事件将被默认忽略(这是由HandlerBase实现的默认行为)。
应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。
- 参数
-
handler- DTD处理程序。 - 另请参见:
-
DTDHandler,HandlerBase
-
setDocumentHandler
void setDocumentHandler(DocumentHandler handler)
已过时。允许应用程序注册文档事件处理程序。如果应用程序没有注册文档处理程序,SAX解析器报告的所有文档事件将被默认忽略(这是由HandlerBase实现的默认行为)。
应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。
- 参数
-
handler- 文档处理程序。 - 另请参见:
-
DocumentHandler,HandlerBase
-
setErrorHandler
void setErrorHandler(ErrorHandler handler)
已过时。允许应用程序注册错误事件处理程序。如果应用程序没有注册错误事件处理程序,SAX解析器报告的所有错误事件将被默认忽略,除了fatalError,这将抛出一个SAXException(这是由HandlerBase实现的默认行为)。
应用程序可以在解析过程中注册一个新的或不同的处理程序,SAX解析器必须立即开始使用新的处理程序。
- 参数
-
handler- 错误处理程序。 - 另请参见:
-
ErrorHandler,SAXException,HandlerBase
-
parse
void parse(InputSource source) throws SAXException, IOException
已过时。解析一个XML文档。应用程序可以使用此方法指示SAX解析器从任何有效的输入源(字符流,字节流或URI)开始解析XML文档。
解析过程中应用程序可能无法调用此方法(它们应该为每个附加的XML文档创建一个新的Parser)。 一旦解析完成,应用程序可能重用相同的Parser对象,可能使用不同的输入源。
- 参数
-
source- XML文档顶级的输入源。 - 异常
-
SAXException- 任何SAX异常,可能包装另一个异常。 -
IOException- 解析器的IO异常,可能来自应用程序提供的字节流或字符流。 - 另请参见:
-
InputSource,parse(java.lang.String),setEntityResolver(org.xml.sax.EntityResolver),setDTDHandler(org.xml.sax.DTDHandler),setDocumentHandler(org.xml.sax.DocumentHandler),setErrorHandler(org.xml.sax.ErrorHandler)
-
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)
-
-