更新 : 2007 年 11 月
名前空間 :
System.Xml
アセンブリ :
System.Xml (System.Xml.dll 内)
Public Overridable Function Clone As XmlNode
Dim instance As XmlNode
Dim returnValue As XmlNode
returnValue = instance.Clone()
public virtual XmlNode Clone()
public:
virtual XmlNode^ Clone()
public function Clone() : 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 ドキュメントのルート ノードのクローンを作成する例を次に示します。
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
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);
}
}
#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 );
}
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
参照