JavaTM 2 Platform
Standard Ed. 6

org.w3c.dom
介面 CDATASection

所有父級介面:
CharacterData, Node, Text

public interface CDATASection
extends Text

CDATA 節用於轉義文本塊,該文本塊包含的字元如果不轉義則會被視為標記。在 CDATA 節中識別的唯一分隔符是結束 CDATA 節的 "]]>" 字元串。CDATA 節不能巢狀。它們的主要目的是包含諸如 XML 片段之類別的材料而無需轉義所有分隔符。

CharacterData.data 屬性保存由 CDATA 節包含的文本。注意,這可以 套件含需要在 CDATA 節之外轉義的字元,而且根據為序列化選擇的字元編碼 ("charset"),它不能作為 CDATA 節的一部分寫出某些字元。

CDATASection 介面通過 Text 介面繼承自 CharacterData 介面。相鄰的 CDATASection 節點不能使用 Node 介面的 normalize 方法合併。

不對 CDATA 節的內容進行任何詞彙檢查,因此在該內容中可能有字元序列 "]]>",根據 [XML 1.0] 2.7 節該序列在 CDATA 節中是非法的。出現此字元序列一定會在序列化期間產生嚴重錯誤,或一定在序列化之前拆分 cdata 節(另請參見 DOMConfiguration 介面中的參數 "split-cdata-sections")。

註: 因為在 CDATASection 內不識別任何標記,所以序列化時不能將字元數字參考用作轉義機制。因此,在序列化具有字元編碼(其中包含一些字元無法表示)的 CDATASection 時需要採取措施。如果這樣做失敗了將不會產生格式良好的 XML。

註: 序列化過程中一個可能的解決方法是在該字元使用字元參考或實體參考輸出字元之前結束 CDATA 節,並為文本節點中的所有更多字元打開一個新 CDATA 節。不過要注意的是,在寫入時有些程式碼轉換資源庫在編碼中丟失字元時不返回錯誤或異常,加大了確保序列化時不破壞資料的難度。

另請參見 Document Object Model (DOM) Level 3 Core Specification


欄位摘要
 
從介面 org.w3c.dom.Node 繼承的欄位
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
方法摘要
 
從介面 org.w3c.dom.Text 繼承的方法
getWholeText, isElementContentWhitespace, replaceWholeText, splitText
 
從介面 org.w3c.dom.CharacterData 繼承的方法
appendData, deleteData, getData, getLength, insertData, replaceData, setData, substringData
 
從介面 org.w3c.dom.Node 繼承的方法
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 


JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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