org.xml.sax.ext

接口
所有超级接口:
Locator
所有已知实现类:
Locator2Impl

public interface Locator2
     
extends Locator

SAX2 扩展,用于扩充通过 Locator 提供的实体信息。如果实现支持此扩展,则在 ContentHandler.setDocumentLocator() 中提供的定位器将实现此接口,并且 http://xml.org/sax/features/use-locator2 功能标志将具有值 true

此模块(包括源代码和文档)在公共域中,同时 没有担保

XMLReader 实现无需支持此信息,并且它不是仅核心 SAX2 分发的一部分。

从以下版本开始:
SAX 2.0 (extensions 1.1 alpha)

方法摘要
 String getEncoding()
          返回实体的字符编码的名称。
 String getXMLVersion()
          返回用于该实体的 XML 的版本。
 
从接口 org.xml.sax.Locator 继承的方法
getColumnNumber, getLineNumber, getPublicId, getSystemId
 

方法详细信息

getXMLVersion

String getXMLVersion()
返回用于该实体的 XML 的版本。这将正式成为当前实体的 <?xml version='...' ...?> 声明的标识符,或由解析器默认指定。

返回:
用于解释实体的文本的 XML 版本的标识符,如果该信息在当前解析状态中仍不可用,则返回 null。

getEncoding

String getEncoding()
返回实体的字符编码的名称。如果在外部声明该编码(例如,在 MIME Content-Type 的标题中),它将是返回的名称。否则,如果在文档的开始处存在 <?xml ...encoding='...'?> 声明,则将返回该编码名称。否则,将推断编码(通常为 UTF-8,或某些 UTF-16 变体),并且返回推断的名称。

当使用 InputSource 提供实体的字符流时,此方法返回在该输入流中提供的编码。

注意,某些当前 W3C 规范要求在处理之前使用 Unicode Normalization Form C 标准化一些编码中的文本。应用程序必须执行此类标准化,并且通常基于此方法返回的值触发它。

编码名称可以是基础 JVM 使用的编码名称,并且比较时应区分大小写。

返回:
用于解释 * 实体的文本的字符编码的名称,如果不向通过 InputSource 传递的 * 字符流提供该名称,或者在当前解析状态中不可用,则为 null。