-
- All Superinterfaces:
-
CharacterData
,Node
- All Known Subinterfaces:
-
CDATASection
public interface Text extends CharacterData
Text
接口继承自CharacterData
并表示Element
或Attr
的文本内容(在XML中称为character data )。 如果元素内容中没有标记,则文本包含在实现Text
接口的单个对象中,该接口是元素的唯一子元素。 如果有标记,则将其解析为信息项(元素,注释等)和Text
节点,Text
节点构成元素的子元素列表。当文档首次通过DOM提供时,每个文本块只有一个
Text
节点。 用户可以创建表示给定元素内容的相邻Text
节点,而不需要任何插入标记,但应该知道无法用XML或HTML表示这些节点之间的分隔,因此它们(通常)不会在DOM编辑会话。Node.normalize()
方法将任何此类相邻的Text
对象合并为每个文本块的单个节点。没有对
Text
节点的内容进行词法检查,并且根据其在文档中的位置,在使用字符引用进行序列化期间必须转义某些字符; 例如字符“<&”如果文本内容是元素或属性的一部分,则字符序列“]]>”当元素的一部分,引号字符“或撇号字符时属性的一部分。
-
-
字段汇总
-
Fields declared in interface 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
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 String
getWholeText()
返回Text
节点逻辑上相邻的文本节点到此节点的所有文本,按文档顺序连接。boolean
isElementContentWhitespace()
返回此文本节点是否包含 element content whitespace ,通常被称为“可忽略的空格”。Text
replaceWholeText(String content)
用指定的文本替换当前节点的文本和所有逻辑上相邻的文本节点。Text
splitText(int offset)
将此节点分解为指定的offset
处的两个节点,将两个节点保留在树中作为兄弟节点。-
声明方法的接口 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
-
-
-
-
方法详细信息
-
splitText
Text splitText(int offset) throws DOMException
将此节点分解为指定的offset
处的两个节点,将两个节点保留在树中作为兄弟节点。 拆分后,此节点将包含直到offset
点的所有内容。 将返回相同类型的新节点,其中包含offset
点及其后的所有内容。 如果原始节点具有父节点,则插入新节点作为原始节点的下一个兄弟节点。 当offset
等于此节点的长度时,新节点没有数据。- 参数
-
offset
- 从0
开始分割的16位单位偏移量。 - 结果
- 新节点,与此节点的类型相同。
- 异常
-
DOMException
- INDEX_SIZE_ERR:如果指定的偏移量为负或大于data
的16位单元数,则data
。
NO_MODIFICATION_ALLOWED_ERR:如果此节点是只读的,则引发此异常。
-
isElementContentWhitespace
boolean isElementContentWhitespace()
返回此文本节点是否包含element content whitespace ,通常被称为“可忽略的空格”。 确定文本节点在加载文档期间包含元素内容中的空格,或者在使用Document.normalizeDocument()
时进行Document.normalizeDocument()
。- 从以下版本开始:
- 1.5,DOM Level 3
-
getWholeText
String getWholeText()
返回Text
节点逻辑上相邻的文本节点到此节点的所有文本,按文档顺序连接。
例如,在下面的例子中wholeText
的上Text
包含“栏中的”返回“barfoo”,而在节点Text
包含节点“foo”的则返回“barfoo”。+-----+ | <p> | +-----+ /\ / \ /-----\ +-------+ | bar | | &ent; | \-----/ +-------+ | | /-----\ | foo | \-----/
图:barTextNode.wholeText值为“barfoo”- 从以下版本开始:
- 1.5,DOM Level 3
-
replaceWholeText
Text replaceWholeText(String content) throws DOMException
用指定的文本替换当前节点的文本和所有逻辑上相邻的文本节点。 删除所有逻辑上相邻的文本节点,包括当前节点,除非它是替换文本的接收者。此方法返回接收替换文本的节点。 返回的节点是:
-
null
,当替换文本为空字符串时; - 当前节点,除非当前节点是只读的;
- 新的
Text
相同类型的节点(Text
或CDATASection
)作为当前节点插入替换位置。
例如,在上面的示例中,在
Text
节点上调用replaceWholeText
,其中包含“bar”并在参数中包含“yo”,结果如下:+-----+ | <p> | +-----+ | | /-----\ | yo | \-----/
图:barTextNode.replaceWholeText(“yo”)用“yo”修改barTextNode的文本内容如果要删除的节点是
EntityReference
只读后代,则必须删除EntityReference
而不是只读节点。 如果任何EntityReference
要去除具有不后代EntityReference
,Text
,或CDATASection
节点,所述replaceWholeText
方法必须在执行该文件的任何修改,养之前失败DOMException
与代码NO_MODIFICATION_ALLOWED_ERR
。例如,在下面的示例中,在包含“bar”的
Text
节点上调用replaceWholeText
失败,因为EntityReference
节点“ent”包含无法删除的Element
节点。- 参数
-
content
- 替换Text
节点的内容。 - 结果
-
使用指定内容创建的
Text
节点。 - 异常
-
DOMException
- NO_MODIFICATION_ALLOWED_ERR:如果要替换的Text
节点之一是只读的,则引发此异常。 - 从以下版本开始:
- 1.5,DOM Level 3
-
-
-