XmlNode.Clone 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이 노드의 복제본을 만듭니다.
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.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.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 | 복제 |
---|---|
attribute | 자식 노드를 포함하여 특성 노드를 복제합니다. |
CData | 데이터 콘텐츠를 포함하여 CData 노드를 복제합니다. |
의견 | 텍스트 콘텐츠를 포함하여 주석 노드를 복제합니다. |
문서 | 자식 노드를 포함하여 문서 노드를 복제합니다. |
DocumentFragment | 자식 노드를 포함하여 문서 조각 노드를 복제합니다. |
DocumentType | 문서 형식 노드를 복제합니다. |
요소 | 요소 노드, 해당 특성 및 모든 자식 노드를 복제합니다. |
엔터티 | entity 노드는 복제할 수 없습니다. |
EntityReference | 엔터티 참조 노드를 복제합니다. 대체 텍스트는 포함되지 않습니다. |
Notation | notation 노드는 복제할 수 없습니다. |
ProcessingInstruction | 대상 및 데이터를 포함하여 처리 명령 노드를 복제합니다. |
SignificantWhitespace | 데이터 값을 포함하여 중요한 공백 노드를 복제합니다. |
텍스트 | 데이터 값을 포함하여 텍스트 노드를 복제합니다. |
공백 | 데이터 값을 포함하여 공백 노드를 복제합니다. |
XmlDeclaration | 데이터 값을 포함하여 XmlDeclaration 노드를 복제합니다. |
다른 모든 노드 형식입니다. | 이러한 노드 형식은 복제할 수 없습니다. |
이 메서드는 DOM(문서 개체 모델)에 대한 Microsoft 확장입니다.