模块  java.xml
软件包  org.xml.sax.ext

Class Attributes2Impl

  • 实现的所有接口
    AttributesAttributes2

    public class Attributes2Impl
    extends AttributesImpl
    implements Attributes2
    SAX2扩展帮助程序,用于获取其他属性信息,实现Attributes2接口。
    This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY.

    这不是仅限核心的SAX2发行版的一部分。

    除非在复制构造函数中将其设置为false或使用setSpecified(int, boolean) ,否则每个属性的指定标志始终为true。 类似地,除了默认属性( 指定为false),非CDATA属性或使用setDeclared(int, boolean)设置为true时,每个属性的声明标志始终为false。 如果手动更改属性的类型,则可能需要修改其声明的标志以进行匹配。

    从以下版本开始:
    1.5,SAX 2.0(扩展1.1 alpha)
    • 构造方法详细信息

      • Attributes2Impl

        public Attributes2Impl()
        构造一个新的空Attributes2Impl对象。
      • Attributes2Impl

        public Attributes2Impl​(Attributes atts)
        复制现有的Attributes或Attributes2对象。 如果对象实现Attributes2,则复制每个属性的指定声明标志的值。 否则,标志值默认为假设没有使用DTD,除非有相反的证据(例如必须已声明 CDATA以外的类型的属性)。

        此构造函数在startElement事件中特别有用。

        参数
        atts - 现有的Attributes对象。
    • 方法详细信息

      • isDeclared

        public boolean isDeclared​(int index)
        返回属性的“声明”标志的当前值。
        Specified by:
        isDeclared接口 Attributes2
        参数
        index - 属性索引(从零开始)。
        结果
        如果属性在DTD中声明,则返回true,否则返回false。
      • isDeclared

        public boolean isDeclared​(String uri,
                                  String localName)
        返回属性的“声明”标志的当前值。
        Specified by:
        isDeclared接口 Attributes2
        参数
        uri - 名称空间URI,如果名称没有名称空间URI,则为空字符串。
        localName - 属性的本地名称。
        结果
        如果属性在DTD中声明,则返回true,否则返回false。
      • isDeclared

        public boolean isDeclared​(String qName)
        返回属性的“声明”标志的当前值。
        Specified by:
        isDeclared接口 Attributes2
        参数
        qName - XML限定(加前缀)名称。
        结果
        如果属性在DTD中声明,则返回true,否则返回false。
      • isSpecified

        public boolean isSpecified​(int index)
        返回属性的“指定”标志的当前值。
        Specified by:
        isSpecified接口 Attributes2
        参数
        index - 属性索引(从零开始)。
        结果
        当前标志值
        异常
        ArrayIndexOutOfBoundsException - 提供的索引未标识属性时。
      • isSpecified

        public boolean isSpecified​(String uri,
                                   String localName)
        返回属性的“指定”标志的当前值。
        Specified by:
        isSpecified接口 Attributes2
        参数
        uri - 名称空间URI,如果名称没有名称空间URI,则为空字符串。
        localName - 属性的本地名称。
        结果
        当前标志值
        异常
        IllegalArgumentException - 提供的名称未标识属性时。
      • isSpecified

        public boolean isSpecified​(String qName)
        返回属性的“指定”标志的当前值。
        Specified by:
        isSpecified接口 Attributes2
        参数
        qName - XML限定(加前缀)名称。
        结果
        当前标志值
        异常
        IllegalArgumentException - 提供的名称未标识属性时。
      • setAttributes

        public void setAttributes​(Attributes atts)
        复制整个Attributes对象。 “指定”标志被指定为true,“声明”标志被指定为false(除非属性的类型不是CDATA),除非该对象是Attributes2对象。 在那种情况下,这些标志值都被复制。
        重写:
        setAttributes ,类 AttributesImpl
        参数
        atts - 要复制的属性。
        另请参见:
        AttributesImpl.setAttributes(org.xml.sax.Attributes)
      • setDeclared

        public void setDeclared​(int index,
                                boolean value)
        为特定属性的“声明”标志分配值。 通常只需要CDATA类型的属性,包括类型更改为CDATA或来自CDATA的属性。
        参数
        index - 属性的索引(从零开始)。
        value - 所需的标志值。
        异常
        ArrayIndexOutOfBoundsException - 提供的索引未标识属性时。
        另请参见:
        AttributesImpl.setType(int, java.lang.String)
      • setSpecified

        public void setSpecified​(int index,
                                 boolean value)
        为特定属性的“指定”标志分配值。 除非通过复制构造函数初始化清除,否则这是清除此标志的唯一方法。
        参数
        index - 属性的索引(从零开始)。
        value - 所需的标志值。
        异常
        ArrayIndexOutOfBoundsException - 提供的索引未标识属性时。