XmlNode.Clone メソッド

定義

このノードの複製を作成します。

public:
 virtual System::Xml::XmlNode ^ Clone();
public virtual System.Xml.XmlNode Clone();
abstract member Clone : unit -> System.Xml.XmlNode
override this.Clone : unit -> System.Xml.XmlNode
Public Overridable Function Clone () As XmlNode

返品

複製されたノード。

次の例では、XML ドキュメントのルート ノードを複製します。

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<book ISBN='1-861001-57-5'>" +
                "<title>Pride And Prejudice</title>" +
                "<price>19.95</price>" +
                "</book>");

    XmlNode root = doc.FirstChild;

    //Clone the root node.  The cloned node includes
    //child nodes. This is similar to calling CloneNode(true).
    XmlNode clone = root.Clone();
    Console.WriteLine(clone.OuterXml);
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    Public Shared Sub Main()
        
        Dim doc As New XmlDocument()
        doc.LoadXml("<book ISBN='1-861001-57-5'>" & _
                    "<title>Pride And Prejudice</title>" & _
                    "<price>19.95</price>" & _
                    "</book>")
        
        Dim root As XmlNode = doc.FirstChild
        
        'Clone the root node.  The cloned node includes
        'child nodes. This is similar to calling CloneNode(true).
        Dim clone As XmlNode = root.Clone()
        Console.WriteLine(clone.OuterXml)
    End Sub
End Class

注釈

XmlElementを複製すると、既定の属性を表すために XML プロセッサによって生成されたものも含め、すべての属性とその値がコピーされます。 このメソッドは、ノードとその下のサブツリーを再帰的に複製します。

Clone は、 CloneNode(true)の呼び出しに相当します。

次の表では、各 XmlNodeTypeの特定の動作について説明します。

XmlNodeType Clone
特性 子ノードを含む属性ノードを複製します。
CData データ コンテンツを含む CData ノードを複製します。
コメント テキスト コンテンツを含むコメント ノードを複製します。
ドキュメント 子ノードを含め、ドキュメント ノードを複製します。
DocumentFragment 子ノードを含め、ドキュメント フラグメント ノードを複製します。
ドキュメントの種類 ドキュメントの種類のノードを複製します。
要素 要素ノード、その属性、およびすべての子ノードを複製します。
エンティティ エンティティ ノードは複製できません。
EntityReference エンティティ参照ノードを複製します。 置換テキストは含まれません。
Notation 表記ノードは複製できません。
処理命令 ターゲットとデータを含む処理命令ノードを複製します。
SignificantWhitespace データ値を含む重要な空白ノードを複製します。
テキスト データ値を含むテキスト ノードを複製します。
空白 データ値を含む空白ノードを複製します。
XML宣言 データ値を含む XmlDeclaration ノードを複製します。
その他すべてのノード タイプ。 これらのノードの種類は複製できません。

このメソッドは、ドキュメント オブジェクト モデル (DOM) のMicrosoft拡張機能です。

適用対象

こちらもご覧ください