public interface LSInput
此接口表示数据的输入源。
此接口允许应用程序封装有关单个对象中的输入源的信息,它可包括公共标识符、系统标识符、字节流(可能带有指定的编码)、基本 URI 和/ 或字符流。
对字节流和字符流的精确定义具有绑定依赖性。
当需要这种对象时,期望应用程序提供实现此接口的对象。应用程序既可以提供自己的实现此接口的对象,也可以使用一般的工厂方法 DOMImplementationLS.createLSInput()
来创建实现此接口的对象。
LSParser
将使用 LSInput
对象来确定如何读取数据。LSParser
将按照下面的顺序查看在 LSInput
中指定的不同输入,以便知道将从哪个输入中读取数据,将使用不为 null 并且不是空字符串的第一个输入:
LSInput.characterStream
LSInput.byteStream
LSInput.stringData
LSInput.systemId
LSInput.publicId
如果所有的输入都为 null,LSParser
将报告有 DOMError
,其 DOMError.type
被设置为 "no-input-specified"
,其 DOMError.severity
被设置为 DOMError.SEVERITY_FATAL_ERROR
。
LSInput
对象属于应用程序。DOM 实现永远不会修改这些对象(尽管可在必要时制作副本和修改副本)。
另请参见《Document Object Model (DOM) Level 3 Load and Save Specification》。
方法摘要 | |
---|---|
String |
getBaseURI() 基 URI(请参阅 [IETF RFC 2396]中的 5.1.4 节),它用来解析绝对 URI 的相对 systemId 。 |
InputStream |
getByteStream() 依赖于语言和绑定类型的属性,表示字节的流。 |
boolean |
getCertifiedText() 如果设置为 true,则假定解析 [XML 1.1] 时对输入进行认证(请参阅 [XML 1.1] 中的 2.13 节)。 |
Reader |
getCharacterStream() 依赖于语言和绑定类型的属性,表示 16 位单元流。 |
String |
getEncoding() 字符编码(如果已知)。 |
String |
getPublicId() 此输入源的公共标识符。 |
String |
getStringData() 要解析的字符串数据。 |
String |
getSystemId() 系统标识符,它是此输入源的 URI 引用 [IETF RFC 2396]。 |
void |
setBaseURI(String baseURI) 基 URI(请参阅 [IETF RFC 2396])中的 5.1.4 节),它用来解析绝对 URI 的相对 systemId 。 |
void |
setByteStream(InputStream byteStream) 依赖于语言和绑定类型的属性,表示字节流。 |
void |
setCertifiedText(boolean certifiedText) 如果设置为 true,则假定解析 [XML 1.1] 时对输入进行验证(请参阅 [XML 1.1] 中的 2.13 节)。 |
void |
setCharacterStream(Reader characterStream) 依赖于语言和绑定类型的属性,表示 16 位单元的流。 |
void |
setEncoding(String encoding) 字符串编码(如果已知)。 |
void |
setPublicId(String publicId) 此输入源的公共标识符。 |
void |
setStringData(String stringData) 要解析的字符串数据。 |
void |
setSystemId(String systemId) 系统标识符,它是此输入源的 URI 引用 [IETF RFC 2396]。 |
方法详细信息 |
---|
Reader getCharacterStream()
void setCharacterStream(Reader characterStream)
InputStream getByteStream()
void setByteStream(InputStream byteStream)
String getStringData()
stringData
时,不必具有 XML 声明。如果有 XML 声明,将忽略编码属性的值。
void setStringData(String stringData)
stringData
时,不必具有 XML 声明。如果有 XML 声明,将忽略编码属性的值。
String getSystemId()
encoding
属性来设置编码。
baseURI
为基解析相对 URI,如果尝试失败,则表示该行为具有实现依赖性。
void setSystemId(String systemId)
encoding
属性来设置编码。
baseURI
为基解析相对 URI,如果尝试失败,则表示该行为与实现有关。
String getPublicId()
void setPublicId(String publicId)
String getBaseURI()
systemId
。
void setBaseURI(String baseURI)
systemId
。
String getEncoding()
void setEncoding(String encoding)
boolean getCertifiedText()
void setCertifiedText(boolean certifiedText)