JavaTM 2 Platform
Standard Ed. 6

org.xml.sax
介面 AttributeList

所有已知實作類別:
AttributeListImpl

已過時。 此介面已經被 SAX2 Attributes 介面取代,後者包括名稱空間支持。

public interface AttributeList

用於元素的屬性規範的介面。

此模組(包括源程式碼和文檔)在公共域中,同時 沒有擔保有關更多資訊,請參閱http://www.saxproject.org

這是用於報告元素的屬性的原始 SAX1 介面。與新的 Attributes 介面不同,它不支持與名稱空間相關的資訊。

當把屬性列表作為 startElement 事件的一部分提供時,該列表將返回僅在該事件範圍內的有效結果;一旦事件處理程序將控制返回給解析器,則該屬性列表無效。若要保存屬性列表的永久性副本,請使用 SAX1 AttributeListImpl helper 類別。

屬性列表只包括已經指定的或預設的屬性:#IMPLIED 屬性將不包括在內。

對於 SAX 應用程序,有兩種方法來獲取來自 AttributeList 的資訊。第一,它可以迭代整個列表:

 public void startElement (String name, AttributeList atts) {
   for (int i = 0; i < atts.getLength(); i++) {
     String name = atts.getName(i);
     String type = atts.getType(i);
     String value = atts.getValue(i);
     [...]
   }
 }
 

(注意,如果沒有屬性,則 getLength() 的結果將是零。)

作為選擇,該應用程序可以請求特定屬性的值或型別:

 public void startElement (String name, AttributeList atts) {
   String identifier = atts.getValue("id");
   String label = atts.getValue("label");
   [...]
 }
 

從以下版本開始:
SAX 1.0
另請參見:
startElement, AttributeListImpl

方法摘要
 int getLength()
          已過時。 返回此列表中屬性的個數。
 String getName(int i)
          已過時。 返回此列表中屬性的名稱(根據位置)。
 String getType(int i)
          已過時。 返回列表中屬性的型別(根據位置)。
 String getType(String name)
          已過時。 返回列表中屬性的型別(根據名稱)。
 String getValue(int i)
          已過時。 返回列表中屬性的值(根據位置)。
 String getValue(String name)
          已過時。 返回列表中屬性的值(根據名稱)。
 

方法詳細資訊

getLength

int getLength()
已過時。 
返回此列表中屬性的個數。

SAX 解析器能夠以任意順序提供屬性,而與其宣告或指定的順序無關。屬性的個數可以為零。

返回:
此列表中屬性的個數。

getName

String getName(int i)
已過時。 
返回此列表中屬性的名稱(根據位置)。

名稱必須是唯一的:SAX 解析器不能兩次包括同一屬性。將從列表中忽略不帶有值的屬性(那些在啟動標記中不帶指定值的宣告的 #IMPLIED)。

如果屬性名稱具有名稱空間前綴,則仍將帶上該前綴。

參數:
i - 列表中屬性的索引(從 0 開始)。
返回:
被索引的屬性的名稱,如果索引超出範圍,則返回 null。
另請參見:
getLength()

getType

String getType(int i)
已過時。 
返回列表中屬性的型別(根據位置)。

屬性型別是下列字元串之一:"CDATA"、"ID"、"IDREF"、"IDREFS"、"NMTOKEN"、"NMTOKENS"、"ENTITY"、"ENTITIES" 或 "NOTATION"(始終用大寫字母)。

如果解析器尚未讀取屬性的宣告,或者解析器沒有報告屬性型別,則必須返回值 "CDATA",這一點在“XML 1.0 建議書”(第 3.3.3 條款,“屬性值標準化”)中規定。

對於不是註釋的可列舉的屬性,解析器將把型別報告為 "NMTOKEN"。

參數:
i - 列表中屬性的索引(從 0 開始)。
返回:
字元串形式的屬性型別,如果索引超出範圍,則返回 null。
另請參見:
getLength(), getType(java.lang.String)

getValue

String getValue(int i)
已過時。 
返回列表中屬性的值(根據位置)。

如果屬性值是標記(IDREFS、ENTITIES 或 NMTOKENS)列表,則將把這些標記串接成用空白分開的單個字元串。

參數:
i - 列表中屬性的索引(從 0 開始)。
返回:
字元串形式的屬性值,如果索引超出範圍,則返回 null。
另請參見:
getLength(), getValue(java.lang.String)

getType

String getType(String name)
已過時。 
返回列表中屬性的型別(根據名稱)。

返回值與 getType(int) 的返回值相同。

如果屬性名稱在文檔中具有名稱空間前綴,則應用程序必須在此處包括前綴。

參數:
name - 屬性的名稱。
返回:
字元串形式的屬性型別,如果不存在此類別屬性,則返回 null。
另請參見:
getType(int)

getValue

String getValue(String name)
已過時。 
返回列表中屬性的值(根據名稱)。

返回值與 getValue(int) 的返回值相同。

如果屬性名稱在文檔中具有名稱空間前綴,則應用程序必須在此處包括前綴。

參數:
name - 要返回的屬性的名稱
返回:
字元串形式的屬性值,如果不存在此類別屬性,則返回 null。
另請參見:
getValue(int)

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only