다음을 통해 공유


XmlDocument.Save 메서드

정의

XML 문서를 지정된 위치에 저장합니다.

오버로드

Save(Stream)

XML 문서를 지정된 스트림에 저장합니다.

Save(TextWriter)

XML 문서를 지정된 TextWriter에 저장합니다.

Save(String)

XML 문서를 지정된 파일에 저장합니다. 지정한 파일이 존재하면 이 메서드를 덮어씁니다.

Save(XmlWriter)

XML 문서를 지정된 XmlWriter에 저장합니다.

Save(Stream)

XML 문서를 지정된 스트림에 저장합니다.

public:
 virtual void Save(System::IO::Stream ^ outStream);
public virtual void Save (System.IO.Stream outStream);
abstract member Save : System.IO.Stream -> unit
override this.Save : System.IO.Stream -> unit
Public Overridable Sub Save (outStream As Stream)

매개 변수

outStream
Stream

저장할 스트림입니다.

예외

이 작업을 수행하면 올바른 형식의 XML 문서가 생성되지 않습니다(예: 문서 요소 또는 중복 XML 선언 없음).

설명

공백은 .로 설정된 true경우에만 PreserveWhitespace 유지됩니다.

현재 XmlDocument 개체의 XmlDeclaration은 저장된 문서의 인코딩 특성을 결정합니다. 인코딩 특성의 값은 속성에서 XmlDeclaration.Encoding 가져옵니다. XmlDocument XmlDeclaration이 없거나 XmlDeclaration에 인코딩 특성이 없는 경우 저장된 문서도 없습니다.

문서가 저장되면 xmlns 특성이 생성되어 노드 ID(로컬 이름 + 네임스페이스 URI)를 올바르게 유지합니다. 예를 들어 다음 C# 코드

XmlDocument doc = new XmlDocument();  
doc.AppendChild(doc.CreateElement("item","urn:1"));  
doc.Save(Console.Out);  

이 xmls 특성을 <item xmls="urn:1"/>생성합니다.

이 메서드는 DOM(문서 개체 모델)에 대한 Microsoft 확장입니다.

메서드만 올바른 형식의 Save XML 문서를 적용합니다. 다른 Save 모든 오버로드는 올바른 형식의 조각만 보장합니다.

적용 대상

Save(TextWriter)

XML 문서를 지정된 TextWriter에 저장합니다.

public:
 virtual void Save(System::IO::TextWriter ^ writer);
public virtual void Save (System.IO.TextWriter writer);
abstract member Save : System.IO.TextWriter -> unit
override this.Save : System.IO.TextWriter -> unit
Public Overridable Sub Save (writer As TextWriter)

매개 변수

writer
TextWriter

저장할 대상 TextWriter입니다.

예외

이 작업을 수행하면 올바른 형식의 XML 문서가 생성되지 않습니다(예: 문서 요소 또는 중복 XML 선언 없음).

설명

인코딩 TextWriter 은 기록되는 인코딩을 결정합니다(XmlDeclaration 노드의 인코딩은 인코딩 TextWriter으로 대체됨). 인 TextWriter``XmlDocument 코딩이 지정되지 않은 경우 인코딩 특성 없이 저장됩니다.

이 메서드는 DOM(문서 개체 모델)에 대한 Microsoft 확장입니다.

메서드만 올바른 형식의 Save XML 문서를 적용합니다. 다른 Save 모든 오버로드는 올바른 형식의 조각만 보장합니다.

적용 대상

Save(String)

XML 문서를 지정된 파일에 저장합니다. 지정한 파일이 존재하면 이 메서드를 덮어씁니다.

public:
 virtual void Save(System::String ^ filename);
public virtual void Save (string filename);
abstract member Save : string -> unit
override this.Save : string -> unit
Public Overridable Sub Save (filename As String)

매개 변수

filename
String

문서를 저장할 파일의 위치입니다.

예외

이 작업을 수행하면 올바른 형식의 XML 문서가 생성되지 않습니다(예: 문서 요소 또는 중복 XML 선언 없음).

예제

다음 예제에서는 XML을 XmlDocument 개체에 로드하고 수정한 다음 data.xml 파일에 저장합니다.

#using <System.Xml.dll>

using namespace System;
using namespace System::Xml;
int main()
{
   
   // Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<item><name>wrench</name></item>" );
   
   // Add a price element.
   XmlElement^ newElem = doc->CreateElement( "price" );
   newElem->InnerText = "10.95";
   doc->DocumentElement->AppendChild( newElem );
   
   // Save the document to a file. White space is
   // preserved (no white space).
   doc->PreserveWhitespace = true;
   doc->Save( "data.xml" );
}

using System;
using System.Xml;

public class Sample {

  public static void Main() {

    // Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<item><name>wrench</name></item>");

    // Add a price element.
    XmlElement newElem = doc.CreateElement("price");
    newElem.InnerText = "10.95";
    doc.DocumentElement.AppendChild(newElem);

    // Save the document to a file. White space is
    // preserved (no white space).
    doc.PreserveWhitespace = true;
    doc.Save("data.xml");
  }
}
Imports System.Xml

public class Sample 

  public shared sub Main() 
 
    ' Create the XmlDocument.
    Dim doc as XmlDocument = new XmlDocument()
    doc.LoadXml("<item><name>wrench</name></item>")

    ' Add a price element.
    Dim newElem as XmlElement = doc.CreateElement("price")
    newElem.InnerText = "10.95"
    doc.DocumentElement.AppendChild(newElem)

    ' Save the document to a file. White space is
    ' preserved (no white space).
    doc.PreserveWhitespace = true
    doc.Save("data.xml")
 
  end sub
end class

data.xml 파일에는 다음 XML <item><name>wrench</name><price>10.95</price></item>이 포함됩니다.

설명

공백은 .로 설정된 true경우에만 PreserveWhitespace 출력 파일에 유지됩니다.

현재 XmlDocument 개체의 XmlDeclaration은 저장된 문서의 인코딩 특성을 결정합니다. 인코딩 특성의 값은 속성에서 XmlDeclaration.Encoding 가져옵니다. XmlDocument XmlDeclaration이 없거나 XmlDeclaration에 인코딩 특성이 없는 경우 저장된 문서도 없습니다.

문서가 저장되면 xmlns 특성이 생성되어 노드 ID(로컬 이름 + 네임스페이스 URI)를 올바르게 유지합니다. 예를 들어 다음 C# 코드

XmlDocument doc = new XmlDocument();  
doc.AppendChild(doc.CreateElement("item","urn:1"));  
doc.Save(Console.Out);  

이 xmls 특성을 <item xmls="urn:1"/>생성합니다.

이 메서드는 DOM(문서 개체 모델)에 대한 Microsoft 확장입니다.

메서드만 올바른 형식의 Save XML 문서를 적용합니다. 다른 Save 모든 오버로드는 올바른 형식의 조각만 보장합니다.

적용 대상

Save(XmlWriter)

XML 문서를 지정된 XmlWriter에 저장합니다.

public:
 virtual void Save(System::Xml::XmlWriter ^ w);
public virtual void Save (System.Xml.XmlWriter w);
abstract member Save : System.Xml.XmlWriter -> unit
override this.Save : System.Xml.XmlWriter -> unit
Public Overridable Sub Save (w As XmlWriter)

매개 변수

w
XmlWriter

저장할 대상 XmlWriter입니다.

예외

이 작업을 수행하면 올바른 형식의 XML 문서가 생성되지 않습니다(예: 문서 요소 또는 중복 XML 선언 없음).

예제

다음 예제에서는 개체에 XML을 XmlDocument 로드하고 파일에 저장합니다.

#using <System.Xml.dll>

using namespace System;
using namespace System::Xml;
int main()
{
   
   // Create the XmlDocument.
   XmlDocument^ doc = gcnew XmlDocument;
   doc->LoadXml( "<item><name>wrench</name></item>" );
   
   // Add a price element.
   XmlElement^ newElem = doc->CreateElement( "price" );
   newElem->InnerText = "10.95";
   doc->DocumentElement->AppendChild( newElem );
   
   // Save the document to a file and auto-indent the output.
   XmlTextWriter^ writer = gcnew XmlTextWriter( "data.xml", nullptr );
   writer->Formatting = Formatting::Indented;
   doc->Save( writer );
}

using System;
using System.Xml;

public class Sample {

  public static void Main() {

    // Create the XmlDocument.
    XmlDocument doc = new XmlDocument();
    doc.LoadXml("<item><name>wrench</name></item>");

   // Add a price element.
   XmlElement newElem = doc.CreateElement("price");
   newElem.InnerText = "10.95";
   doc.DocumentElement.AppendChild(newElem);

   XmlWriterSettings settings = new XmlWriterSettings();
   settings.Indent = true;
   // Save the document to a file and auto-indent the output.
   XmlWriter writer = XmlWriter.Create("data.xml", settings);
    doc.Save(writer);
  }
}
Imports System.Xml

public class Sample 

  public shared sub Main() 
 
    ' Create the XmlDocument.
    Dim doc as XmlDocument = new XmlDocument()
    doc.LoadXml("<item><name>wrench</name></item>")

   ' Add a price element.
   Dim newElem as XmlElement = doc.CreateElement("price")
   newElem.InnerText = "10.95"
   doc.DocumentElement.AppendChild(newElem)

   Dim settings As New XmlWriterSettings()
   settings.Indent = True
   ' Save the document to a file and auto-indent the output.
   Dim writer As XmlWriter = XmlWriter.Create("data.xml", settings)
    doc.Save(writer)
  end sub
end class

설명

공백은 .로 설정된 true경우에만 PreserveWhitespace 유지됩니다.

인코딩 XmlWriter 은 기록되는 인코딩을 결정합니다(XmlDeclaration 노드의 인코딩은 인코딩 XmlWriter으로 대체됨). 인 XmlWriter``XmlDocument 코딩이 지정되지 않은 경우 인코딩 특성 없이 저장됩니다.

문서가 저장되면 xmlns 특성이 생성되어 노드 ID(LocalName + NamespaceURI)를 올바르게 유지합니다. 예를 들어 다음 C# 코드

XmlDocument doc = new XmlDocument();  
doc.AppendChild(doc.CreateElement("item","urn:1"));  
doc.Save(Console.Out);  

는 다음 xmls 특성을 생성합니다.

<item  
    xmls="urn:1"/>  

이 메서드는 DOM(문서 개체 모델)에 대한 Microsoft 확장입니다.

메서드만 올바른 형식의 Save XML 문서를 적용합니다. 다른 Save 모든 오버로드는 올바른 형식의 조각만 보장합니다.

추가 정보

적용 대상