public interface Locator
org.xml.sax.Locator |
Known Indirect Subclasses |
用于将SAX事件与文档位置相关联的界面。
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.
如果SAX解析器向SAX应用程序提供位置信息,则通过实现此接口并使用内容处理程序的setDocumentLocator
方法将实例传递给应用程序来实现。 应用程序可以使用该对象来获取XML源文档中任何其他SAX事件的位置。
请注意,对象返回的结果仅在每个回调方法的范围内有效:如果应用程序在任何其他时间尝试使用定位器,或者在解析完成后将收到不可预知的结果。
SAX解析器不需要提供定位器,但强烈建议他们这样做。 如果解析器提供定位器,则必须在报告任何其他文档事件之前这样做。 如果应用程序收到startDocument
事件时尚未设置定位器,则应用程序应假定定位器不可用。
也可以看看:
Public methods |
|
---|---|
abstract int |
getColumnNumber() 返回当前文档事件结束的列号。 |
abstract int |
getLineNumber() 返回当前文档事件结束的行号。 |
abstract String |
getPublicId() 返回当前文档事件的公共标识符。 |
abstract String |
getSystemId() 返回当前文档事件的系统标识符。 |
int getColumnNumber ()
返回当前文档事件结束的列号。 这是自上一行结束以来Java char
值的一个数字。
警告:该方法的返回值仅用于诊断的近似值; 它并不打算提供足够的信息来编辑原始XML文档的字符内容。 例如,当行包含组合字符序列,宽字符,代理对或双向文本时,该值可能不对应于文本编辑器显示中的列。
返回值是触发事件的标记出现的文档实体或外部解析实体中的列号的近似值。
如果可能,SAX驱动程序应在与文档事件关联的文本之后提供第一个字符的行位置。 每行的第一列是第1列。
Returns | |
---|---|
int |
The column number, or -1 if none is available. |
也可以看看:
int getLineNumber ()
返回当前文档事件结束的行号。 行由行结束符定义,这些行结束符在XML规范中定义。
警告:该方法的返回值仅用于诊断的近似值; 它并不打算提供足够的信息来编辑原始XML文档的字符内容。 在某些情况下,这些“行”号与显示为列的内容匹配,而在其他情况下,由于内部实体扩展,这些号可能与源文本不匹配。
返回值是触发事件的标记出现的文档实体或外部解析实体中的行号的近似值。
如果可能,SAX驱动程序应在与文档事件关联的文本之后提供第一个字符的行位置。 第一行是第一行。
Returns | |
---|---|
int |
The line number, or -1 if none is available. |
也可以看看:
String getPublicId ()
返回当前文档事件的公共标识符。
返回值是文档实体或触发事件的标记出现的外部解析实体的公共标识符。
Returns | |
---|---|
String |
A string containing the public identifier, or null if none is available. |
也可以看看:
String getSystemId ()
返回当前文档事件的系统标识符。
返回值是文档实体或触发事件的标记出现的外部解析实体的系统标识符。
如果系统标识符是URL,则解析器必须在将其传递给应用程序之前将其完全解析。 例如,一个文件名必须总是作为一个文件提供:... URL,其他类型的相对URI也将根据它们的基础进行解析。
Returns | |
---|---|
String |
A string containing the system identifier, or null if none is available. |
也可以看看: