Module java.xml
Package org.xml.sax.ext

Interface Locator2

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

public interface Locator2 extends Locator
SAX2扩展,用于通过Locator提供实体信息。如果实现支持此扩展,ContentHandler.setDocumentLocator() 中提供的Locator将实现此接口,并且http://xml.org/sax/features/use-locator2特性标志将具有值true

XMLReader实现不需要支持此信息,它不是核心SAX2发行版的一部分。

自版本:
1.5, SAX 2.0 (扩展 1.1 alpha)
  • Method Details

    • getXMLVersion

      String getXMLVersion()
      返回实体使用的XML版本。通常这将是当前实体的<?xml version='...' ...?>声明中的标识符,或者由解析器默认设置。
      返回:
      用于解释实体文本的XML版本标识符,如果该信息在当前解析状态中尚不可用,则返回null。
    • getEncoding

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

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

      请注意,一些最近的W3C规范要求在处理之前,某些编码的文本必须进行规范化,使用Unicode规范化形式C。此类规范化必须由应用程序执行,并通常基于此方法返回的值触发。

      编码名称可能是底层JVM使用的名称,比较时应忽略大小写。

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