XmlNode.Clone XmlNode.Clone XmlNode.Clone XmlNode.Clone Method

정의

이 노드의 복제본을 만듭니다.Creates a duplicate of this node.

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

반환

복제된 노드입니다.The cloned node.

예제

다음 예제에서는 XML 문서의 루트 노드를 복제합니다.The following example clones the root node of the XML document.

#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 );
}

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
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

설명

복제는 XmlElement 모든 특성 및 기본값으로 설정 된 특성을 나타내는 XML 프로세서에서 생성 된 항목을 포함 하 여 해당 값을 복사 합니다.Cloning an XmlElement copies all attributes and their values, including those generated by the XML processor to represent defaulted attributes. 이 메서드를 재귀적으로 노드와 그 아래의 하위 트리를 복제합니다.This method recursively clones the node and the subtree underneath it.

Clone 호출 하는 것과 같습니다 CloneNode(true)합니다.Clone is equivalent to calling CloneNode(true).

다음 표에서 각 특정 동작을 설명 XmlNodeType합니다.The following table describes the specific behavior for each XmlNodeType.

XmlNodeTypeXmlNodeType 복제Clone
특성Attribute 자식 노드를 포함 하는 특성 노드를 복제 합니다.Clones the attribute node, including child nodes.
CDataCData 데이터 콘텐츠를 포함 하는 CData 노드를 복제 합니다.Clones the CData node, including its data content.
주석Comment 텍스트 내용을 포함 하 여 주석 노드를 복제 합니다.Clones the comment node, including its text content.
문서Document 모든 자식 노드를 포함 하는 문서 노드에 복제 합니다.Clones the document node, including any child nodes.
DocumentFragmentDocumentFragment 모든 자식 노드를 포함 하는 문서 조각 노드를 복제 합니다.Clones the document fragment node, including any child nodes.
DocumentTypeDocumentType 문서 형식 노드를 복제합니다.Clones the document type node.
요소Element 요소 노드, 해당 특성 및 자식 노드를 복제합니다.Clones the element node, its attributes, and any child nodes.
엔터티Entity entity 노드는 복제할 수 없습니다.Entity nodes cannot be cloned.
EntityReferenceEntityReference 엔터티 참조 노드를 복제합니다.Clones the entity reference node. 대체 텍스트는 포함되지 않습니다.The replacement text is not included.
NotationNotation notation 노드는 복제할 수 없습니다.Notation nodes cannot be cloned.
ProcessingInstructionProcessingInstruction 해당 대상 및 데이터를 포함 하는 처리 명령 노드를 복제 합니다.Clones the processing instruction node, including its target and data.
SignificantWhitespaceSignificantWhitespace 해당 데이터 값을 포함 하 여 공백 노드를 복제 합니다.Clones the significant white space node, including its data value.
텍스트Text 해당 데이터 값을 포함 하 고 텍스트 노드를 복제 합니다.Clones the text node, including its data value.
WhitespaceWhitespace 해당 데이터 값을 포함 하 여 공백 노드를 복제 합니다.Clones the white space node, including its data value.
XmlDeclarationXmlDeclaration 해당 데이터 값을 포함 하는 XmlDeclaration 노드에 복제 합니다.Clones the XmlDeclaration node, including its data value.
다른 모든 노드 형식입니다.All other node types. 이러한 노드 형식은 복제할 수 없습니다.These node types cannot be cloned.

이 메서드는 문서 개체 모델 (DOM)에 대 한 Microsoft 확장입니다.This method is a Microsoft extension to the Document Object Model (DOM).

적용 대상

추가 정보