public abstract class DocumentBuilder extends Object
Document 。
这个类的一个实例可以从DocumentBuilderFactory.newDocumentBuilder()方法获得。 一旦获得此类的实例,可以从各种输入源解析XML。 这些输入源是InputStreams,Files,URL和SAX InputSources。
请注意,该类从SAX API重用了几个类。 这不要求底层DOM实现的实现者使用SAX解析器将XML文档解析为Document 。 它只需要实现使用这些现有API与应用程序通信。
| Modifier | Constructor and Description |
|---|---|
protected |
DocumentBuilder()
受保护的构造函数
|
| Modifier and Type | Method and Description |
|---|---|
abstract DOMImplementation |
getDOMImplementation()
获取一个 DOMImplementation对象的实例。
|
Schema |
getSchema()
获取到的基准 Schema正在使用的XML处理器。
|
abstract boolean |
isNamespaceAware()
指示此解析器是否配置为了解命名空间。
|
abstract boolean |
isValidating()
指示此解析器是否配置为验证XML文档。
|
boolean |
isXIncludeAware()
获取此解析器的XInclude处理模式。
|
abstract Document |
newDocument()
获取DOM的新实例 Document对象来构建一个DOM树。
|
Document |
parse(File f)
将给定文件的内容解析为XML文档,并返回一个新的DOM Document对象。
|
abstract Document |
parse(InputSource is)
将给定输入源的内容解析为XML文档,并返回一个新的DOM Document对象。
|
Document |
parse(InputStream is)
将给定的 InputStream的内容解析为XML文档,并返回一个新的DOM Document对象。
|
Document |
parse(InputStream is, String systemId)
将给定的 InputStream的内容解析为XML文档,并返回一个新的DOM Document对象。
|
Document |
parse(String uri)
将给定URI的内容解析为XML文档,并返回一个新的DOM Document对象。
|
void |
reset()
将此
DocumentBuilder重置为原始配置。
|
abstract void |
setEntityResolver(EntityResolver er)
指定要用于解析要解析的XML文档中存在的实体的 EntityResolver 。
|
abstract void |
setErrorHandler(ErrorHandler eh)
指定解析器使用的 ErrorHandler 。
|
public void reset()
将此DocumentBuilder重置为原始配置。
DocumentBuilder被重置为与使用DocumentBuilderFactory.newDocumentBuilder()创建时相同的状态。 reset()旨在允许现有的DocumentBuilder s的重用,从而节省了与创建新的DocumentBuilder的资源。
重置DocumentBuilder不能保证具有相同的EntityResolver或ErrorHandler Object s,例如Object.equals(Object obj) 。 保证功能相当于EntityResolver和ErrorHandler 。
UnsupportedOperationException - 实现时不覆盖此方法。
public Document parse(InputStream is) throws SAXException, IOException
InputStream的内容解析为XML文档,并返回一个新的DOM Document对象。
一个IllegalArgumentException如果抛出InputStream为空。
is - 包含要解析的内容的InputStream。
Document解析的结果
InputStream
IOException - 如果发生任何IO错误。
SAXException - 如果发生任何解析错误。
IllegalArgumentException - 当
is是
null
DocumentHandler
public Document parse(InputStream is, String systemId) throws SAXException, IOException
InputStream的内容解析为XML文档并返回一个新的DOM Document对象。
一个IllegalArgumentException如果抛出InputStream为空。
is - 包含要解析的内容的InputStream。
systemId - 提供解决相对URI的基础。
IOException - 如果发生任何IO错误。
SAXException - 如果发生任何解析错误。
IllegalArgumentException - 当
is是
null
DocumentHandler
public Document parse(String uri) throws SAXException, IOException
Document对象。
一个IllegalArgumentException如果URI是被抛出null空。
uri - 要解析的内容的位置。
IOException - 如果发生任何IO错误。
SAXException - 如果发生任何解析错误。
IllegalArgumentException - 当
uri是
null
DocumentHandler
public Document parse(File f) throws SAXException, IOException
Document对象。
一个IllegalArgumentException如果抛出File是null空。
f - 包含要解析的XML的文件。
IOException - 如果发生任何IO错误。
SAXException - 如果发生任何解析错误。
IllegalArgumentException - 当
f是
null
DocumentHandler
public abstract Document parse(InputSource is) throws SAXException, IOException
Document对象。
一个IllegalArgumentException如果抛出InputSource是null空。
is - 包含要解析的内容的InputSource。
IOException - 如果发生任何IO错误。
SAXException - 如果发生任何解析错误。
IllegalArgumentException - 当
is是
null
DocumentHandler
public abstract boolean isNamespaceAware()
public abstract boolean isValidating()
public abstract void setEntityResolver(EntityResolver er)
EntityResolver 。
将其设置为null将导致使用它自己的默认实现和行为的底层实现。
er - 要用于解析要解析的XML文档中存在的实体的
EntityResolver 。
public abstract void setErrorHandler(ErrorHandler eh)
ErrorHandler 。
将其设置为null将导致使用它自己的默认实现和行为的底层实现。
eh - 解析器使用的
ErrorHandler 。
public abstract DOMImplementation getDOMImplementation()
DOMImplementation对象的实例。
DOMImplementation 。
public Schema getSchema()
获取到的基准Schema正在使用的XML处理器。
如果没有使用模式,则返回null 。
Schema正在使用或null如果没有使用
UnsupportedOperationException - 实现时不覆盖此方法
public boolean isXIncludeAware()
获取此解析器的XInclude处理模式。
DocumentBuilderFactory.isXIncludeAware() 。
UnsupportedOperationException - 实现时不覆盖此方法
DocumentBuilderFactory.setXIncludeAware(boolean)
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.