|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface Text
該 Text
介面繼承自 CharacterData
,並且表示 Element
或 Attr
的文本內容(在 XML 中稱為字元資料)。如果元素的內容中沒有標記,則文本包含在實作 Text
介面的單個物件中,此介面是該元素的唯一子元素。如果有標記,則將它解析為資訊項(元素、註釋,等等)和組成該元素的子元素列表的 Text
節點。
首先通過 DOM 使文檔可用時,文本的每個塊只有一個 Text
節點。使用者可以創建表示給定元素的內容的相鄰的 Text
節點,沒有任何插入標記,但應該知道無法在 XML 或 HTML 中表示這些節點之間的分隔,因此它們(通常)不會保持在 DOM 編輯Session之間。Node.normalize()
方法為每個文本塊將所有這樣的相鄰 Text
物件合併為單個的節點。
不對 Text
節點的內容進行任何詞彙檢查,並且根據節點在文檔中的位置,有些字元必須在使用字元參考進行序列化期間轉義;例如,在文本內容是元素或屬性的一部分的字元 "<&";文本內容是元素一部分的字元序列 "]]>";當文本內容是屬性一部分的引號字元 " 或省略符號字元 '。
另請參見 Document Object Model (DOM) Level 3 Core Specification。
欄位摘要 |
---|
方法摘要 | |
---|---|
String |
getWholeText()
返回 Text 節點(邏輯上與此節點相鄰的節點)的以文檔順序串接的所有文本。 |
boolean |
isElementContentWhitespace()
返回此文本節點是否包含 元素內容空白符,即經常所稱的“可忽略的空白符”。 |
Text |
replaceWholeText(String content)
將當前節點和所有邏輯上相鄰的文本節點的文本替換為指定的文本。 |
Text |
splitText(int offset)
在指定的 offset 處將此節點拆分為兩個節點,並將二者作為兄弟節點保持在階層樹中。 |
從介面 org.w3c.dom.CharacterData 繼承的方法 |
---|
appendData, deleteData, getData, getLength, insertData, replaceData, setData, substringData |
方法詳細資訊 |
---|
Text splitText(int offset) throws DOMException
offset
處將此節點拆分為兩個節點,並將二者作為兄弟節點保持在階層樹中。拆分之後,此節點將包含 offset
點之前的所有內容。返回相同型別的新節點,該節點包含 offset
點及其後面的所有內容。如果初始節點有父節點,則作為初始節點下一個兄弟節點插入新節點。當 offset
等於此節點的長度時,則新節點沒有任何資料。
offset
- 從 0
開始的16 位單元偏移量,在該位置拆分。
DOMException
- INDEX_SIZE_ERR: 如果指定偏移量為負或大於 data
中的 16 位單元數,則引發此異常。boolean isElementContentWhitespace()
Document.normalizeDocument()
時是否進行驗證。
String getWholeText()
Text
節點(邏輯上與此節點相鄰的節點)的以文檔順序串接的所有文本。wholeText
在包含 "bar" 的 Text
節點上時返回 "barfoo",而在包含 "foo" 的 Text
節點上時則返回 "barfoo"。
+-----+ | <p> | +-----+ /\ / \ /-----\ +-------+ | bar | | &ent; | \-----/ +-------+ | | /-----\ | foo | \-----/圖:barTextNode.wholeText 的值為 "barfoo"
Text replaceWholeText(String content) throws DOMException
此方法返回接收替換文本的節點。返回的節點為:
null
,此時替換文本為空字元串;
Text
或 CDATASection
)的新 Text
節點。
例如,在上面的範例中,在參數中有 "yo" 的套件含 "bar" 的 Text
上調用 replaceWholeText
將導致以下情況:
+-----+ | <p> | +-----+ | | /-----\ | yo | \-----/圖:barTextNode.replaceWholeText("yo") 使用 "yo" 修改 barTextNode 的文本內容
在要移除的節點為 EntityReference
的只讀的後代時,必須移除 EntityReference
,而不是移除只讀節點。如果要移除的任何 EntityReference
都有不是 EntityReference
、Text
或 CDATASection
的後代,則在對文檔進行任何修改之前,replaceWholeText
方法一定失敗,並引發具有程式碼 NO_MODIFICATION_ALLOWED_ERR
的 DOMException
。
例如,在下面的範例中,在包含 "bar" 的 Text
節點上調用 replaceWholeText
會失敗,因為 EntityReference
節點 "ent" 套件含無法移除的 Element
節點。
content
- 替換 Text
節點的內容。
Text
節點。
DOMException
- NO_MODIFICATION_ALLOWED_ERR: 如果正在替換的某個 Text
節點為只讀的,則引發此異常。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。