XML Element 節點的表示法。
// Adds up the values listed in a sample XML document and adds a new element // with the total. let xml = '<things>' + '<plates>12</plates>' + '<bowls>18</bowls>' + '<cups>25</cups>' + '</things>'; const document = XmlService.parse(xml); const root = document.getRootElement(); const items = root.getChildren(); let total = 0; for (let i = 0; i < items.length; i++) { total += Number(items[i].getText()); } const totalElement = XmlService.createElement('total').setText(total); root.addContent(totalElement); xml = XmlService.getPrettyFormat().format(document); Logger.log(xml);
方法
| 方法 | 傳回類型 | 簡短說明 |
|---|---|---|
add | Element | 將指定節點附加為 Element 節點的最後一個子項。 |
add | Element | 在 Element 節點的所有直接子項節點中,於指定索引處插入指定節點。 |
clone | Content[] | 建立 {@code Element} 節點所有直接子項的未附加副本。 |
detach() | Content|null | 將節點從父項 Element 節點中分離。 |
get | Content[] | 取得 {@code Element} 節點的所有直接子項節點。 |
get | Attribute|null | 取得這個 Element 節點的屬性,該屬性具有指定名稱,且沒有命名空間。 |
get | Attribute|null | 取得這個 Element 節點的屬性,並提供名稱和命名空間。 |
get | Attribute[] | 取得這個 Element 節點的所有屬性,順序與文件中的顯示順序相同。 |
get | Element|null | 取得具有指定名稱且沒有命名空間的第一個 Element 節點,該節點是這個 Element 節點的直接子項。 |
get | Element|null | 取得具有指定名稱和命名空間的第一個 Element 節點,該節點是這個 Element 節點的直接子項。 |
get | String|null | 如果節點是 Element 節點的直接子項,則會取得指定名稱且沒有命名空間的節點文字值。 |
get | String|null | 如果節點是 Element 節點的直接子項,則會取得具有指定名稱和命名空間的節點文字值。 |
get | Element[] | 取得這個 Element 節點的所有直接子項 Element 節點,順序與文件中的顯示順序相同。 |
get | Element[] | 取得具有指定名稱且沒有命名空間的所有 Element 節點,這些節點是這個 Element 節點的直接子項,順序與文件中的顯示順序相同。 |
get | Element[] | 取得具有指定名稱和命名空間的所有 Element 節點,這些節點是這個 Element 節點的直接子項,且順序與文件中顯示的順序相同。 |
get | Content|null | 在 {@code Element} 節點的所有直接子項節點中,取得指定索引處的節點。 |
get | Integer | 取得 {@code Element} 節點的直接子項節點數。 |
get | Content[] | 取得 {@code Element} 節點的直接或間接子項的所有節點,順序與節點在文件中顯示的順序相同。 |
get | Document | 取得包含 {@code Element} 節點的 XML 文件。 |
get | String | 取得 Element 節點的本機名稱。 |
get | Namespace | 取得 Element 節點的命名空間。 |
get | Namespace | 取得 Element 節點中具有指定前置字串的命名空間。 |
get | Element|null | 取得節點的父項 Element 節點。 |
get | String | 以 [namespacePrefix]:[localName] 形式取得 Element 節點的本機名稱和命名空間前置字元。 |
get | String | 取得 Element 節點的文字值。 |
get | String | 取得節點直接或間接子項的所有節點文字值,順序與文件中的顯示順序相同。 |
is | Boolean | 判斷這個 Element 節點是否為指定 Element 節點的直接或間接父項。 |
is | Boolean | 判斷 Element 節點是否為文件的根節點。 |
remove | Boolean | 移除這個 Element 節點的指定屬性 (如有)。 |
remove | Boolean | 如果存在這類屬性,則會移除這個 Element 節點的屬性 (具有指定名稱,且沒有命名空間)。 |
remove | Boolean | 移除這個 Element 節點的屬性 (如有),並使用指定名稱和命名空間。 |
remove | Content[] | 移除 {@code Element} 節點的所有直接子項節點。 |
remove | Boolean | 如果節點是 {@code Element} 節點的直接子項,則會移除該節點。 |
remove | Content|null | 從 {@code Element} 節點的所有直接子項中,移除指定索引處的節點。 |
set | Element | 為這個 Element 節點設定指定屬性。 |
set | Element | 為這個 Element 節點設定屬性,並提供名稱、值,但不提供命名空間。 |
set | Element | 使用指定名稱、值和命名空間,為這個 Element 節點設定屬性。 |
set | Element | 設定 Element 節點的本機名稱。 |
set | Element | 設定 Element 節點的命名空間。 |
set | Element | 設定 Element 節點的文字值。 |
內容詳盡的說明文件
addContent(content)
將指定節點附加為 Element 節點的最後一個子項。content 引數可以是 Element 物件,也可以是與 ContentType 中列出的型別對應的任何節點物件。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
content | Content | 要附加的節點。 |
回攻員
Element:Element 節點,用於鏈結。
addContent(index, content)
在 Element 節點的所有直接子項節點中,於指定索引處插入指定節點。content 引數可以是 Element 物件,也可以是與 ContentType 中列出的型別對應的任何節點物件。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
index | Integer | 要在 Element 節點的直接子項中插入節點的索引。 |
content | Content | 要插入的節點。 |
回攻員
Element:Element 節點,用於鏈結。
cloneContent()
getAllContent()
getAttribute(name)
取得這個 Element 節點的屬性,該屬性具有指定名稱,但沒有命名空間。如果沒有這類屬性,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 屬性名稱。 |
回攻員
Attribute|null:屬性,或 null (如果沒有指定名稱的屬性,也沒有命名空間)。
getAttribute(name, namespace)
getAttributes()
getChild(name)
取得具有指定名稱且沒有命名空間的第一個 Element 節點,該節點是這個 Element 節點的直接子項。如果沒有這類節點,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 子 Element 節點的名稱。 |
回攻員
Element|null:Element 節點,或如果沒有具指定名稱且沒有命名空間的直接子項 Element 節點,則為 null。
getChild(name, namespace)
getChildText(name)
如果節點是 Element 節點的直接子項,則會取得具有指定名稱且沒有命名空間的節點文字值。如果沒有這類節點,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 子節點的名稱。 |
回攻員
String|null:子節點的文字值,或 null (如果沒有具有指定名稱且沒有命名空間的直接子節點)。
getChildText(name, namespace)
如果節點是 Element 節點的直接子項,則會取得具有指定名稱和命名空間的節點文字值。如果沒有這類節點,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 子節點的名稱。 |
namespace | Namespace | 子節點的命名空間。 |
回攻員
String|null:子節點的文字值,如果沒有具有指定名稱和命名空間的直接子節點,則為 null。
getChildren()
getChildren(name)
取得具有指定名稱且沒有命名空間的所有 Element 節點,這些節點是這個 Element 節點的直接子項,順序與文件中的顯示順序相同。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 子 Element 節點的名稱。 |
回攻員
Element[] - 具有指定名稱且沒有命名空間的所有 Element 節點陣列,這些節點是這個 Element 節點的直接子項。
getChildren(name, namespace)
getContent(index)
在 {@code Element} 節點的所有直接子項節點中,取得指定索引處的節點。如果指定索引處沒有節點,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
index | Integer | 節點在 {@code Element} 節點所有直接子項中的索引。 |
回攻員
Content|null:節點;如果指定索引沒有節點,則為 null。
getContentSize()
取得 {@code Element} 節點的直接子項節點數。
回攻員
Integer - {@code Element} 節點的直接子項節點數量。
getDescendants()
取得 {@code Element} 節點的直接或間接子項的所有節點,順序與節點在文件中顯示的順序相同。
回攻員
Content[]:所有節點的陣列,這些節點是 {@code Element} 節點的直接或間接子項。
getDocument()
getName()
取得 Element 節點的本機名稱。如果節點有命名空間前置字元,請使用 getQualifiedName() 或 getNamespace()。getPrefix() 取得前置字串。
回攻員
String:Element 節點的本機名稱。
getNamespace()
getNamespace(prefix)
取得 Element 節點中具有指定前置字串的命名空間。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
prefix | String | 命名空間的前置字元。 |
回攻員
Namespace:具有指定前置字元的 Element 節點命名空間。
getQualifiedName()
以 [namespacePrefix]:[localName] 形式取得 Element 節點的本機名稱和命名空間前置字元。如果節點沒有命名空間前置字元,請使用 getName()。
回攻員
String:Element 節點的本機名稱和命名空間前置字串,格式為 [namespacePrefix]:[localName]。
getText()
取得 Element 節點的文字值。
回攻員
String:Element 節點的文字值。
getValue()
取得節點直接或間接子項的所有節點文字值,順序與文件中的顯示順序相同。
回攻員
String:節點直接或間接子項的所有節點文字值。
isAncestorOf(other)
判斷這個 Element 節點是否為指定 Element 節點的直接或間接父項。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
other | Element | 另一個 Element 節點。 |
回攻員
Boolean - true (如果這個 Element 節點是指定 Element 節點的直接或間接父項);false (如果不是)。
isRootElement()
判斷 Element 節點是否為文件的根節點。
回攻員
Boolean - true (如果 Element 節點是文件的根節點);false (如果不是)。
removeAttribute(attribute)
移除這個 Element 節點的指定屬性 (如有)。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
attribute | Attribute | 屬性。 |
回攻員
Boolean - true (如果屬性存在但已移除);false (如果屬性不存在)。
removeAttribute(attributeName)
如果存在這類屬性,則會移除這個 Element 節點的屬性 (具有指定名稱,且沒有命名空間)。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
attribute | String | 屬性名稱。 |
回攻員
Boolean - true (如果屬性存在但已移除);false (如果屬性不存在)。
removeAttribute(attributeName, namespace)
移除這個 Element 節點的屬性 (如有),並使用指定名稱和命名空間。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
attribute | String | 屬性名稱。 |
namespace | Namespace | 屬性的命名空間。 |
回攻員
Boolean - true (如果屬性存在但已移除);false (如果屬性不存在)。
removeContent()
removeContent(content)
如果節點是 {@code Element} 節點的直接子項,則會移除該節點。content 引數可以是 Element 物件,也可以是與 ContentType 中列出的型別對應的任何節點物件。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
content | Content | 要移除的節點。 |
回攻員
Boolean - true (如果節點是直接子項且已移除);false (如果不是)。
removeContent(index)
從 {@code Element} 節點的所有直接子項中,移除指定索引處的節點。如果指定索引處沒有節點,這個方法會傳回 null。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
index | Integer | 節點在 {@code Element} 節點所有直接子項中的索引。 |
回攻員
Content|null:已移除的節點;如果指定索引沒有節點,則為 null。
setAttribute(attribute)
setAttribute(name, value)
為這個 Element 節點設定屬性,並提供名稱、值,但不提供命名空間。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 要設定的屬性名稱。 |
value | String | 要設定的屬性值。 |
回攻員
Element:Element 節點,用於鏈結。
setAttribute(name, value, namespace)
setName(name)
設定 Element 節點的本機名稱。如要為節點設定命名空間前置字串,請搭配使用 setNamespace(namespace) 和 XmlService.getNamespace(prefix, uri)。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
name | String | 要設定的本機名稱。 |
回攻員
Element:Element 節點,用於鏈結。
setNamespace(namespace)
setText(text)
設定 Element 節點的文字值。如果節點已包含文字值或任何子節點,這個方法會覆寫舊內容。如要改為附加或插入內容,請使用 addContent(content) 或 addContent(index, content)。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
text | String | 要設定的文字。 |
回攻員
Element:Element 節點,用於鏈結。