java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

javax.xml.parsers
类 SAXParser

java.lang.Object
  继承者 javax.xml.parsers.SAXParser

public abstract class SAXParser
extends Object

定义包装 XMLReader 实现类的 API。在 JAXP 1.0 中,此类包装 Parser 接口,但是此接口由 XMLReader 取代。为了便于过渡,此类继续支持相同的名称和接口,并支持新方法。 此类的实例可以从 SAXParserFactory.newSAXParser() 方法获得。获取此类的实例之后,将可以从各种输入源解析 XML。这些输入源为 InputStream、File、URL 和 SAX InputSource。

此静态方法根据系统属性设置创建新的工厂实例,如果未定义属性,则使用平台默认值。

控制创建哪个工厂实现的系统属性命名为 "javax.xml.parsers.SAXParserFactory"。此属性命名一个类,该类为此抽象类的具体子类。如果未定义属性,将使用默认的平台。

由于内容由基础解析器解析,因此将调用给定 HandlerBaseDefaultHandler 的方法。

包装基础实现的此类的实现程序可以考虑使用 ParserAdapter 类,从而使其 SAX1 实现最初在此修订类下工作。


构造方法摘要
protected SAXParser()
          将阻止实例化的受保护的构造方法。
 
方法摘要
abstract  Parser getParser()
          返回由此类的实现封装的 SAX 解析器。
abstract  Object getProperty(String name)
          返回 XMLReader 的基础实现中请求的特定属性。
 Schema getSchema()
          获取对 XML 处理器使用的 Schema 的引用。
abstract  XMLReader getXMLReader()
          返回由此类的实现封装的 XMLReader
abstract  boolean isNamespaceAware()
          指示此解析器是否被配置为可识别名称空间。
abstract  boolean isValidating()
          指示此解析器是否被配置为验证 XML 文档。
 boolean isXIncludeAware()
          获取此解析器的 XInclude 处理模式。
 void parse(File f, DefaultHandler dh)
          使用指定的 DefaultHandler 将指定文件的内容解析为 XML。
 void parse(File f, HandlerBase hb)
          使用指定的 HandlerBase 将指定文件的内容解析为 XML。
 void parse(InputSource is, DefaultHandler dh)
          使用指定的 DefaultHandler 将给定 InputSource 的内容解析为 XML。
 void parse(InputSource is, HandlerBase hb)
          使用指定的 HandlerBase 将给定 InputSource 的内容解析为 XML。
 void parse(InputStream is, DefaultHandler dh)
          使用指定的 DefaultHandler 将给定的 InputStream 实例的内容解析为 XML。
 void parse(InputStream is, DefaultHandler dh, String systemId)
          使用指定的 DefaultHandler 将给定的 InputStream 实例的内容解析为 XML。
 void parse(InputStream is, HandlerBase hb)
          使用指定的 HandlerBase 将给定的 InputStream 实例的内容解析为 XML。
 void parse(InputStream is, HandlerBase hb, String systemId)
          使用指定的 HandlerBase 将给定的 InputStream 实例的内容解析为 XML。
 void parse(String uri, DefaultHandler dh)
          使用指定的 DefaultHandler 将给定统一资源标识符 (URI) 描述的内容解析为 XML。
 void parse(String uri, HandlerBase hb)
          使用指定的 HandlerBase 将给定统一资源标识符 (URI) 描述的内容解析为 XML。
 void reset()
          将此 SAXParser 重置为其原始配置。
abstract  void setProperty(String name, Object value)
          设置 XMLReader 的基础实现中的特定属性。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

SAXParser

protected SAXParser()

将阻止实例化的受保护的构造方法。使用 SAXParserFactory.newSAXParser()

方法详细信息

reset

public void reset()

将此 SAXParser 重置为其原始配置。

SAXParser 被重置为使用 SAXParserFactory.newSAXParser() 创建它时的状态。reset() 在设计上旨在允许重用现有的 SAXParser,从而节省与创建新的 SAXParser 相关的资源。

重置的 SAXParser 不能保证具有相同的 Schema Object,如 Object.equals(Object obj)。可以保证具有功能相等的 Schema

从以下版本开始:
1.5

parse

public void parse(InputStream is,
                  HandlerBase hb)
           throws SAXException,
                  IOException

使用指定的 HandlerBase 将给定的 InputStream 实例的内容解析为 XML。建议使用此方法的 DefaultHandler 版本,因为 HandlerBase 类在 SAX 2.0 中已废弃

参数:
is - 包含要解析内容的 InputStream。
hb - 要使用的 SAX HandlerBase。
抛出:
IllegalArgumentException - 如果给定的 InputStream 为 null。
SAXException - 如果解析产生 SAX 错误。
IOException - 如果在与 InputStream 的交互过程中发生 IO 错误。
另请参见:
DocumentHandler

parse

public void parse(InputStream is,
                  HandlerBase hb,
                  String systemId)
           throws SAXException,
                  IOException

使用指定的 HandlerBase 将给定的 InputStream 实例的内容解析为 XML。建议使用此方法的 DefaultHandler 版本,因为 HandlerBase 类在 SAX 2.0 中已废弃

参数:
is - 包含要解析内容的 InputStream。
hb - 要使用的 SAX HandlerBase。
systemId - 解析相关 URI 所需的 systemId。
抛出:
IllegalArgumentException - 如果给定的 InputStreamnull
IOException - 如果在与 InputStream 的交互过程中发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
中的此方法。

parse

public void parse(InputStream is,
                  DefaultHandler dh)
           throws SAXException,
                  IOException
使用指定的 DefaultHandler 将给定的 InputStream 实例的内容解析为 XML。

参数:
is - 包含要解析内容的 InputStream。
dh - 要使用的 SAX DefaultHandler。
抛出:
IllegalArgumentException - 如果给定的 InputStream 为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(InputStream is,
                  DefaultHandler dh,
                  String systemId)
           throws SAXException,
                  IOException
使用指定的 DefaultHandler 将给定的 InputStream 实例的内容解析为 XML。

参数:
is - 包含要解析内容的 InputStream。
dh - 要使用的 SAX DefaultHandler。
systemId - 解析相关 URL 所需的 systemId。
抛出:
IllegalArgumentException - 如果给定的 InputStream 为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
org.xml.sax.DocumentHandler 版本。

parse

public void parse(String uri,
                  HandlerBase hb)
           throws SAXException,
                  IOException
使用指定的 HandlerBase 将给定统一资源标识符 (URI) 描述的内容解析为 XML。建议使用此方法的 DefaultHandler 版本,因为 HandlerBase 类在 SAX 2.0 中已废弃

参数:
uri - 要解析的内容的位置。
hb - 要使用的 SAX HandlerBase。
抛出:
IllegalArgumentException - 如果 uri 为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(String uri,
                  DefaultHandler dh)
           throws SAXException,
                  IOException
使用指定的 DefaultHandler 将给定统一资源标识符 (URI) 描述的内容解析为 XML。

参数:
uri - 要解析的内容的位置。
dh - 要使用的 SAX DefaultHandler。
抛出:
IllegalArgumentException - 如果 uri 为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(File f,
                  HandlerBase hb)
           throws SAXException,
                  IOException
使用指定的 HandlerBase 将指定文件的内容解析为 XML。 建议使用此方法的 DefaultHandler 版本,因为 HandlerBase 类在 SAX 2.0 中已废弃。

参数:
f - 包含要解析的 XML 的文件
hb - 要使用的 SAX HandlerBase。
抛出:
IllegalArgumentException - 如果 File 对象为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(File f,
                  DefaultHandler dh)
           throws SAXException,
                  IOException
使用指定的 DefaultHandler 将指定文件的内容解析为 XML。

参数:
f - 包含要解析的 XML 的文件
dh - 要使用的 SAX DefaultHandler。
抛出:
IllegalArgumentException - 如果 File 对象为 null。
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(InputSource is,
                  HandlerBase hb)
           throws SAXException,
                  IOException
使用指定的 HandlerBase 将给定 InputSource 的内容解析为 XML。建议使用此方法的 DefaultHandler 版本,因为 HandlerBase 类在 SAX 2.0 中已废弃。

参数:
is - 包含要解析内容的 InputSource。
hb - 要使用的 SAX HandlerBase。
抛出:
IllegalArgumentException - 如果 InputSource 对象为 null
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

parse

public void parse(InputSource is,
                  DefaultHandler dh)
           throws SAXException,
                  IOException
使用指定的 DefaultHandler 将给定 InputSource 的内容解析为 XML。

参数:
is - 包含要解析内容的 InputSource。
dh - 要使用的 SAX DefaultHandler。
抛出:
IllegalArgumentException - 如果 InputSource 对象为 null
IOException - 如果发生任何 IO 错误。
SAXException - 如果在处理过程中发生任何 SAX 错误。
另请参见:
DocumentHandler

getParser

public abstract Parser getParser()
                          throws SAXException
返回由此类的实现封装的 SAX 解析器。

返回:
由此类的实现封装的 SAX 解析器。
抛出:
SAXException - 如果在处理过程中发生任何 SAX 错误。

getXMLReader

public abstract XMLReader getXMLReader()
                                throws SAXException
返回由此类的实现封装的 XMLReader

返回:
由此类的实现封装的 XMLReader。
抛出:
SAXException - 如果在处理过程中发生任何 SAX 错误。

isNamespaceAware

public abstract boolean isNamespaceAware()
指示此解析器是否被配置为可识别名称空间。

返回:
如果此解析器被配置为可识别名称空间,则返回 true;否则返回 false。

isValidating

public abstract boolean isValidating()
指示此解析器是否被配置为验证 XML 文档。

返回:
此解析器被配置为验证 XML 文档,则返回 true;否则返回 false。

setProperty

public abstract void setProperty(String name,
                                 Object value)
                          throws SAXNotRecognizedException,
                                 SAXNotSupportedException

设置 XMLReader 的基础实现中的特定属性。核心功能和属性列表可以在 http://sax.sourceforge.net/?selected=get-set 中找到。

参数:
name - 要设置的属性的名称。
value - 要设置的属性的值。
抛出:
SAXNotRecognizedException - 当基础 XMLReader 不能识别属性名称时。
SAXNotSupportedException - 当基础 XMLReader 可以识别属性名称,但不支持该属性时。
另请参见:
XMLReader.setProperty(java.lang.String, java.lang.Object)

getProperty

public abstract Object getProperty(String name)
                            throws SAXNotRecognizedException,
                                   SAXNotSupportedException

返回 XMLReader 的基础实现中请求的特定属性。

参数:
name - 要检索的属性的名称。
返回:
所请求属性的值。
抛出:
SAXNotRecognizedException - 当基础 XMLReader 不能识别属性名称时。
SAXNotSupportedException - 当基础 XMLReader 可以识别属性名称,但不支持该属性时。
另请参见:
XMLReader.getProperty(java.lang.String)

getSchema

public Schema getSchema()

获取对 XML 处理器使用的 Schema 的引用。

如果没有使用 schema,则返回 null

返回:
返回正在使用的 Schema,如果一个也没有使用,则返回 null
抛出:
UnsupportedOperationException - 为了向后兼容,当使用 JAXP 较早版本的实现时,将抛出此异常。
从以下版本开始:
1.5

isXIncludeAware

public boolean isXIncludeAware()

获取此解析器的 XInclude 处理模式。

返回:
当从工厂创建此解析器时,返回 SAXParserFactory.isXIncludeAware() 的返回值。
抛出:
UnsupportedOperationException - 为了向后兼容,当使用 JAXP 较早版本的实现时,将抛出此异常。
从以下版本开始:
1.5
另请参见:
SAXParserFactory.setXIncludeAware(boolean)

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策