CompositeNode
遗产: java.lang.Object, com.aspose.words.Node
所有已实现的接口: java.lang.Iterable
public abstract class CompositeNode extends Node implements Iterable
可以包含其他节点的节点的基类。
要了解更多信息,请访问**Aspose.Words Document Object Model (DOM)**文档文章。
文档表示为节点树,类似于 DOM 或 XmlDocument。
有关详细信息,请参阅复合设计模式。
这CompositeNode班级:
- 提供对子节点的访问。
- 实现复合操作,例如插入和删除子项。
- 提供用于 XPath 导航的方法。
方法
accept(DocumentVisitor visitor)
public abstract boolean accept(DocumentVisitor visitor)
接待来访者。
枚举此节点及其所有子节点。每个节点调用 DocumentVisitor 上的相应方法。
有关更多信息,请参阅访问者设计模式。
参数:
范围 | 类型 | 描述 |
---|---|---|
visitor | DocumentVisitor | 将访问节点的访问者。 |
退货: boolean - 如果所有节点都被访问,则为真;如果 DocumentVisitor 在访问所有节点之前停止操作,则返回 false。
appendChild(Node newChild)
public Node appendChild(Node newChild)
将指定节点添加到此节点的子节点列表的末尾。
如果 newChild 已经在树中,则首先将其删除。
如果被插入的节点是从另一个文档创建的,你应该使用**M:Aspose.Words.DocumentBase.ImportNode(Aspose.Words.Node,System.Boolean,Aspose.Words.ImportFormatMode)**将节点导入当前文档。然后可以将导入的节点插入到当前文档中。
参数:
范围 | 类型 | 描述 |
---|---|---|
newChild | Node | 要添加的节点。 |
退货: Node - 添加的节点。
dd()
public void dd()
deepClone(boolean isCloneChildren)
public Node deepClone(boolean isCloneChildren)
创建节点的副本。
此方法用作节点的复制构造函数。克隆的节点没有父节点,但与原始节点属于同一个文档。
此方法始终执行节点的深层复制。这isCloneChildren参数指定是否也执行复制所有子节点。
参数:
范围 | 类型 | 描述 |
---|---|---|
isCloneChildren | boolean | True 递归克隆指定节点下的子树; false 仅克隆节点本身。 |
退货: Node - 克隆节点。
equals(Object arg0)
public boolean equals(Object arg0)
参数:
范围 | 类型 | 描述 |
---|---|---|
arg0 | java.lang.Object |
退货: 布尔值
getAncestor(int ancestorType)
public CompositeNode getAncestor(int ancestorType)
参数:
范围 | 类型 | 描述 |
---|---|---|
ancestorType | int |
退货: CompositeNode
getAncestor(Class ancestorType)
public CompositeNode getAncestor(Class ancestorType)
获取指定对象类型的第一个祖先。
参数:
范围 | 类型 | 描述 |
---|---|---|
ancestorType | java.lang.Class | 要检索的祖先的对象类型。 |
退货: CompositeNode - 指定类型的祖先,如果未找到此类型的祖先,则为 null。
如果祖先类型等于 ancestorType 或派生自 ancestorType,则祖先类型匹配。
getChild(int nodeType, int index, boolean isDeep)
public Node getChild(int nodeType, int index, boolean isDeep)
参数:
范围 | 类型 | 描述 |
---|---|---|
nodeType | int | |
index | int | |
isDeep | boolean |
退货: Node
getChildNodes()
public NodeCollection getChildNodes()
获取此节点的所有直接子节点。
笔记,getChildNodes()相当于调用 GetChildNodes(NodeType.Any, false) 并在每次访问时创建并返回一个新集合。
如果没有子节点,则此属性返回一个空集合。
退货: NodeCollection - 该节点的所有直接子节点。
getChildNodes(int nodeType, boolean isDeep)
public NodeCollection getChildNodes(int nodeType, boolean isDeep)
参数:
范围 | 类型 | 描述 |
---|---|---|
nodeType | int | |
isDeep | boolean |
退货: NodeCollection
getClass()
public final native Class<?> getClass()
退货: java.lang.Class
getContainer()
public CompositeNode getContainer()
退货: CompositeNode
getCount()
public int getCount()
获取此节点的直接子节点数。
退货: int - 此节点的直接子节点数。
getCurrentNode()
public Node getCurrentNode()
退货: Node
getCustomNodeId()
public int getCustomNodeId()
指定自定义节点标识符。
默认为零。
这个标识符可以任意设置和使用。例如,作为获取外部数据的密钥。
重要说明,指定的值不会保存到输出文件中,并且仅在节点生命周期内存在。
退货: int - 相应的 int 值。
getDocument()
public DocumentBase getDocument()
获取此节点所属的文档。
该节点始终属于一个文档,即使它刚刚创建并且尚未添加到树中,或者如果它已从树中删除也是如此。
退货: DocumentBase - 该节点所属的文档。
getFirstChild()
public Node getFirstChild()
获取节点的第一个子节点。如果没有第一个子节点,则返回 null。
退货: Node - 节点的第一个孩子。
getLastChild()
public Node getLastChild()
获取节点的最后一个子节点。如果没有最后一个子节点,则返回 null。
退货: Node - 节点的最后一个孩子。
getNextMatchingNode(Node curNode)
public Node getNextMatchingNode(Node curNode)
参数:
范围 | 类型 | 描述 |
---|---|---|
curNode | Node |
退货: Node
getNextSibling()
public Node getNextSibling()
获取紧跟在该节点之后的节点。如果没有下一个节点,则返回 null。
退货: Node - 紧接此节点之后的节点。
getNodeType()
public abstract int getNodeType()
获取此节点的类型。
退货: int - 此节点的类型。返回值是其中之一NodeType常数。
getParentNode()
public CompositeNode getParentNode()
获取此节点的直接父级。
如果一个节点刚刚被创建并且还没有被添加到树中,或者如果它已经被从树中移除,则父节点为空。
退货: CompositeNode - 此节点的直接父节点。
getPreviousSibling()
public Node getPreviousSibling()
获取紧接在该节点之前的节点。如果前面没有节点,则返回 null。
退货: Node - 紧接在该节点之前的节点。
getRange()
public Range getRange()
返回一个Range表示包含在该节点中的文档部分的对象。
退货: Range - 一个Range表示包含在该节点中的文档部分的对象。
getText()
public String getText()
获取此节点及其所有子节点的文本。
返回的字符串包括所有控制字符和特殊字符,如ControlChar.
退货: java.lang.字符串
hasChildNodes()
public boolean hasChildNodes()
如果此节点有任何子节点,则返回 true。
退货: boolean - 如果此节点有任何子节点则为真。
hashCode()
public native int hashCode()
退货: 整数
indexOf(Node child)
public int indexOf(Node child)
返回子节点数组中指定子节点的索引。如果在子节点中找不到该节点,则返回 -1。
参数:
范围 | 类型 | 描述 |
---|---|---|
child | Node |
退货: 整数
insertAfter(Node newChild, Node refChild)
public Node insertAfter(Node newChild, Node refChild)
在指定的引用节点之后立即插入指定的节点。
如果 refChild 为 null,则在子节点列表的开头插入 newChild。
如果 newChild 已经在树中,则首先将其删除。
如果被插入的节点是从另一个文档创建的,你应该使用**M:Aspose.Words.DocumentBase.ImportNode(Aspose.Words.Node,System.Boolean,Aspose.Words.ImportFormatMode)**将节点导入当前文档。然后可以将导入的节点插入到当前文档中。
参数:
范围 | 类型 | 描述 |
---|---|---|
newChild | Node | 要插入的节点。 |
refChild | Node | 作为参考节点的节点。 newNode 放置在 refNode 之后。 |
退货: Node - 插入的节点。
insertBefore(Node newChild, Node refChild)
public Node insertBefore(Node newChild, Node refChild)
将指定节点插入到紧靠指定引用节点之前。
如果 refChild 为 null,则在子节点列表的末尾插入 newChild。
如果 newChild 已经在树中,则首先将其删除。
如果被插入的节点是从另一个文档创建的,你应该使用**M:Aspose.Words.DocumentBase.ImportNode(Aspose.Words.Node,System.Boolean,Aspose.Words.ImportFormatMode)**将节点导入当前文档。然后可以将导入的节点插入到当前文档中。
参数:
范围 | 类型 | 描述 |
---|---|---|
newChild | Node | 要插入的节点。 |
refChild | Node | 作为参考节点的节点。 newChild 放置在此节点之前。 |
退货: Node - 插入的节点。
isComposite()
public boolean isComposite()
返回 true,因为此节点可以有子节点。
退货: boolean - True 因为这个节点可以有子节点。
iterator()
public Iterator iterator()
为该节点的子节点上的每个样式迭代提供支持。
退货: java.util.迭代器
nextPreOrder(Node rootNode)
public Node nextPreOrder(Node rootNode)
根据前序树遍历算法获取下一个节点。
参数:
范围 | 类型 | 描述 |
---|---|---|
rootNode | Node | 遍历的顶端节点(极限)。 |
退货: Node - 预定顺序中的下一个节点。如果到达根节点则为空。
nodeTypeToString(int nodeType)
public static String nodeTypeToString(int nodeType)
参数:
范围 | 类型 | 描述 |
---|---|---|
nodeType | int |
退货: java.lang.字符串
notify()
public final native void notify()
notifyAll()
public final native void notifyAll()
prependChild(Node newChild)
public Node prependChild(Node newChild)
将指定节点添加到此节点的子节点列表的开头。
如果 newChild 已经在树中,则首先将其删除。
如果被插入的节点是从另一个文档创建的,你应该使用**M:Aspose.Words.DocumentBase.ImportNode(Aspose.Words.Node,System.Boolean,Aspose.Words.ImportFormatMode)**将节点导入当前文档。然后可以将导入的节点插入到当前文档中。
参数:
范围 | 类型 | 描述 |
---|---|---|
newChild | Node | 要添加的节点。 |
退货: Node - 添加的节点。
previousPreOrder(Node rootNode)
public Node previousPreOrder(Node rootNode)
根据前序树遍历算法获取上一个节点。
参数:
范围 | 类型 | 描述 |
---|---|---|
rootNode | Node | 遍历的顶端节点(极限)。 |
退货: Node 预购顺序中的前一个节点。如果到达根节点则为空。
remove()
public void remove()
从父级中移除自身。
removeAllChildren()
public void removeAllChildren()
移除当前节点的所有子节点。
removeChild(Node oldChild)
public Node removeChild(Node oldChild)
删除指定的子节点。
删除节点后,oldChild 的父级设置为 null。
参数:
范围 | 类型 | 描述 |
---|---|---|
oldChild | Node | 要删除的节点。 |
退货: Node - 删除的节点。
removeSmartTags()
public void removeSmartTags()
删除所有SmartTag当前节点的后代节点。此方法不会删除智能标记的内容。
selectNodes(String xpath)
public NodeList selectNodes(String xpath)
选择与 XPath 表达式匹配的节点列表。
目前仅支持带有元素名称的表达式。不支持使用属性名称的表达式。
参数:
范围 | 类型 | 描述 |
---|---|---|
xpath | java.lang.String | XPath 表达式。 |
退货: NodeList - 匹配 XPath 查询的节点列表。
selectSingleNode(String xpath)
public Node selectSingleNode(String xpath)
选择与 XPath 表达式匹配的第一个节点。
目前仅支持带有元素名称的表达式。不支持使用属性名称的表达式。
参数:
范围 | 类型 | 描述 |
---|---|---|
xpath | java.lang.String | XPath 表达式。 |
退货: Node - 与 XPath 查询匹配的第一个节点,如果未找到匹配节点,则为 null。
setCustomNodeId(int value)
public void setCustomNodeId(int value)
指定自定义节点标识符。
默认为零。
这个标识符可以任意设置和使用。例如,作为获取外部数据的密钥。
重要说明,指定的值不会保存到输出文件中,并且仅在节点生命周期内存在。
参数:
范围 | 类型 | 描述 |
---|---|---|
value | int | 对应的int值。 |
toString()
public String toString()
退货: java.lang.字符串
toString(SaveOptions saveOptions)
public String toString(SaveOptions saveOptions)
使用指定的保存选项将节点的内容导出为字符串。
参数:
范围 | 类型 | 描述 |
---|---|---|
saveOptions | SaveOptions | 指定控制节点保存方式的选项。 |
退货: java.lang.String - 指定格式的节点内容。
toString(int saveFormat)
public String toString(int saveFormat)
参数:
范围 | 类型 | 描述 |
---|---|---|
saveFormat | int |
退货: java.lang.字符串
wait()
public final void wait()
wait(long arg0)
public final native void wait(long arg0)
参数:
范围 | 类型 | 描述 |
---|---|---|
arg0 | long |
wait(long arg0, int arg1)
public final void wait(long arg0, int arg1)
参数:
范围 | 类型 | 描述 |
---|---|---|
arg0 | long | |
arg1 | int |