java.lang.Object
org.xml.sax.helpers.AttributesImpl
org.xml.sax.ext.Attributes2Impl
- 所有已实现的接口:
-
Attributes
,Attributes2
用于提供额外属性信息的SAX2扩展助手,实现了
Attributes2
接口。
这不是核心SAX2发行版的一部分。
每个属性的specified标志始终为true,除非在复制构造函数中将其设置为false,或使用setSpecified(int, boolean)
。类似地,每个属性的declared标志始终为false,除非是默认属性(specified为false),非CDATA属性,或者使用setDeclared(int, boolean)
将其设置为true。如果手动更改属性的类型,则可能需要修改其declared标志以匹配。
- 自从:
- 1.5, SAX 2.0 (扩展 1.1 alpha)
-
Constructor Summary
ConstructorDescription构造一个新的、空的Attributes2Impl对象。Attributes2Impl
(Attributes atts) 复制一个现有的Attributes或Attributes2对象。 -
Method Summary
Modifier and TypeMethodDescriptionvoid
将属性添加到列表末尾,并将其"specified"标志设置为true。boolean
isDeclared
(int index) 返回属性的"declared"标志的当前值。boolean
isDeclared
(String qName) 返回属性的"declared"标志的当前值。boolean
isDeclared
(String uri, String localName) 返回属性的"declared"标志的当前值。boolean
isSpecified
(int index) 返回属性的"specified"标志的当前值。boolean
isSpecified
(String qName) 返回属性的"specified"标志的当前值。boolean
isSpecified
(String uri, String localName) 返回属性的"specified"标志的当前值。void
setAttributes
(Attributes atts) 复制整个Attributes对象。void
setDeclared
(int index, boolean value) 为特定属性的"declared"标志赋值。void
setSpecified
(int index, boolean value) 为特定属性的"specified"标志赋值。Methods declared in class org.xml.sax.helpers.AttributesImpl
clear, getIndex, getIndex, getLength, getLocalName, getQName, getType, getType, getType, getURI, getValue, getValue, getValue, removeAttribute, setAttribute, setLocalName, setQName, setType, setURI, setValue
-
Constructor Details
-
Attributes2Impl
public Attributes2Impl()构造一个新的、空的Attributes2Impl对象。 -
Attributes2Impl
复制一个现有的Attributes或Attributes2对象。如果对象实现了Attributes2,则每个属性的specified和declared标志的值都会被复制。否则,标志值默认为假定未使用DTD,除非有证据表明相反(例如具有非CDATA类型的属性,必须已经declared)。此构造函数在
startElement
事件中特别有用。- 参数:
-
atts
- 现有的Attributes对象。
-
-
Method Details
-
isDeclared
public boolean isDeclared(int index) 返回属性的"declared"标志的当前值。- 指定者:
-
isDeclared
在接口Attributes2
- 参数:
-
index
- 属性索引(从零开始)。 - 返回:
- 如果属性在DTD中声明,则为true,否则为false。
-
isDeclared
返回属性的"declared"标志的当前值。- 指定者:
-
isDeclared
在接口Attributes2
- 参数:
-
uri
- 命名空间URI,如果名称没有命名空间URI,则为空字符串。 -
localName
- 属性的本地名称。 - 返回:
- 如果属性在DTD中声明,则为true,否则为false。
-
isDeclared
返回属性的"declared"标志的当前值。- 指定者:
-
isDeclared
在接口Attributes2
- 参数:
-
qName
- XML的限定(带前缀)名称。 - 返回:
- 如果属性在DTD中声明,则为true,否则为false。
-
isSpecified
public boolean isSpecified(int index) 返回属性的"specified"标志的当前值。- 指定者:
-
isSpecified
在接口Attributes2
- 参数:
-
index
- 属性索引(从零开始)。 - 返回:
- 当前标志值
- 抛出:
-
ArrayIndexOutOfBoundsException
- 当提供的索引未标识属性时。
-
isSpecified
返回属性的"specified"标志的当前值。- 指定者:
-
isSpecified
在接口Attributes2
- 参数:
-
uri
- 命名空间URI,如果名称没有命名空间URI,则为空字符串。 -
localName
- 属性的本地名称。 - 返回:
- 当前标志值
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-
isSpecified
返回属性的"specified"标志的当前值。- 指定者:
-
isSpecified
在接口Attributes2
- 参数:
-
qName
- XML的限定(带前缀)名称。 - 返回:
- 当前标志值
- 抛出:
-
IllegalArgumentException
- 当提供的名称未标识属性时。
-
setAttributes
复制整个Attributes对象。将"specified"标志分配为true,"declared"标志分配为false(除非属性的类型不是CDATA),除非对象是Attributes2对象。在这种情况下,这些标志值都会被复制。- 覆盖:
-
setAttributes
在类AttributesImpl
- 参数:
-
atts
- 要复制的属性。 - 参见:
-
addAttribute
将属性添加到列表末尾,并将其"specified"标志设置为true。要将该标志的值设置为false,请使用setSpecified(int, boolean)
。除非属性type为CDATA,否则将标记此属性为在DTD中声明。要为CDATA属性将该标志的值设置为true,请使用
setDeclared(int, boolean)
。- 覆盖:
-
addAttribute
在类AttributesImpl
- 参数:
-
uri
- 命名空间URI,如果没有可用或未执行命名空间处理,则为空字符串。 -
localName
- 本地名称,如果未执行命名空间处理,则为空字符串。 -
qName
- 限定(带前缀)名称,如果不可用限定名称,则为空字符串。 -
type
- 属性类型(字符串形式)。 -
value
- 属性值。 - 参见:
-
setDeclared
public void setDeclared(int index, boolean value) 为特定属性的"declared"标志赋值。通常仅需要为CDATA类型的属性赋值,包括将属性类型更改为或从CDATA更改的属性。- 参数:
-
index
- 属性的索引(从零开始)。 -
value
- 所需的标志值。 - 抛出:
-
ArrayIndexOutOfBoundsException
- 当提供的索引未标识属性时。 - 参见:
-
setSpecified
public void setSpecified(int index, boolean value) 为特定属性的"specified"标志赋值。这是清除该标志的唯一方法,除非通过复制构造函数进行初始化清除。- 参数:
-
index
- 属性的索引(从零开始)。 -
value
- 所需的标志值。 - 抛出:
-
ArrayIndexOutOfBoundsException
- 当提供的索引未标识属性时。
-