.NET Framework クラス ライブラリ
XmlNode..::.Clone メソッド

更新 : 2007 年 11 月

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

名前空間 :  System.Xml
アセンブリ :  System.Xml (System.Xml.dll 内)
構文

Visual Basic (宣言)
Public Overridable Function Clone As XmlNode
Visual Basic (使用法)
Dim instance As XmlNode
Dim returnValue As XmlNode

returnValue = instance.Clone()
C#
public virtual XmlNode Clone()
Visual C++
public:
virtual XmlNode^ Clone()
J#
public XmlNode Clone()
JScript
public function Clone() : XmlNode

戻り値

型 : System.Xml..::.XmlNode
クローンとして作成されたノード。
解説

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

Clone は、CloneNode(true) の呼び出しと等価です。

XmlNodeType の固有の動作を次の表に示します。

XmlNodeType

Clone

Attribute

子ノードを含めて、属性ノードのクローンを作成します。

CData

データの内容を含めて、CData ノードのクローンを作成します。

Comment

テキストの内容を含めて、コメント ノードのクローンを作成します。

Document

子ノードを含めて、ドキュメント ノードのクローンを作成します。

DocumentFragment

子ノードを含めて、ドキュメント フラグメント ノードのクローンを作成します。

DocumentType

ドキュメント型ノードのクローンを作成します。

Element

要素ノード、その属性、および子ノードのクローンを作成します。

Entity

エンティティ ノードのクローンは作成できません。

EntityReference

エンティティ参照ノードのクローンを作成します。置換テキストは含まれません。

Notation

表記ノードのクローンは作成できません。

ProcessingInstruction

対象およびデータを含めて、処理命令ノードのクローンを作成します。

SignificantWhitespace

データ値を含めて、有意な空白ノードのクローンを作成します。

Text

データ値を含めて、テキスト ノードのクローンを作成します。

Whitespace

データ値を含めて、空白ノードのクローンを作成します。

XmlDeclaration

データ値を含めて、XmlDeclaration ノードのクローンを作成します。

その他のすべてのノード型。

これらのノード型はクローンを作成できません。

このメソッドは、DOM (Document Object Model) に対する Microsoft 拡張機能です。


XML ドキュメントのルート ノードのクローンを作成する例を次に示します。

Visual Basic
Option Explicit
Option Strict

Imports System
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 'Main
End Class 'Sample
C#
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);
  }
}
Visual C++
#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew 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 );
}

J#
import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    public static void main(String[] args)
    {
        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.get_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.get_OuterXml());
    } //main
} //Sample
プラットフォーム

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360

.NET Framework および .NET Compact Framework では、各プラットフォームのすべてのバージョンはサポートしていません。サポートされているバージョンについては、「.NET Framework システム要件」を参照してください。
バージョン情報

.NET Framework

サポート対象 : 3.5、3.0、2.0、1.1、1.0

.NET Compact Framework

サポート対象 : 3.5、2.0、1.0

XNA Framework

サポート対象 : 2.0、1.0
参照

参照

タグ :


Page view tracker