次の方法で共有


XmlDocument.Save メソッド

定義

指定した場所に XML ドキュメントを保存します。

オーバーロード

名前 説明
Save(Stream)

指定したストリームに XML ドキュメントを保存します。

Save(TextWriter)

指定した TextWriterに XML ドキュメントを保存します。

Save(String)

指定したファイルに XML ドキュメントを保存します。 指定したファイルが存在する場合、このメソッドによって上書きされます。

Save(XmlWriter)

指定した XmlWriterに XML ドキュメントを保存します。

Save(Stream)

ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs

指定したストリームに 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 宣言はありません)。

注釈

空白は、 PreserveWhitespacetrue に設定されている場合にのみ保持されます。

現在の XmlDocument オブジェクトの XmlDeclaration によって、保存されたドキュメント内のエンコード属性が決まります。 エンコード属性の値は、 XmlDeclaration.Encoding プロパティから取得されます。 XmlDocumentに XmlDeclaration がない場合、または XmlDeclaration にエンコード属性がない場合は、保存されたドキュメントにも含まれません。

ドキュメントが保存されると、ノード ID (ローカル名 + 名前空間 URI) を正しく保持するために xmlns 属性が生成されます。 たとえば、次の 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)

ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs

指定した TextWriterに XML ドキュメントを保存します。

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)

ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs

指定したファイルに 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;
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>が含まれます。

注釈

出力ファイルには、 PreserveWhitespacetrue に設定されている場合にのみ、空白が保持されます。

現在の XmlDocument オブジェクトの XmlDeclaration によって、保存されたドキュメント内のエンコード属性が決まります。 エンコード属性の値は、 XmlDeclaration.Encoding プロパティから取得されます。 XmlDocumentに XmlDeclaration がない場合、または XmlDeclaration にエンコード属性がない場合は、保存されたドキュメントにも含まれません。

ドキュメントが保存されると、ノード ID (ローカル名 + 名前空間 URI) を正しく保持するために xmlns 属性が生成されます。 たとえば、次の 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)

ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs
ソース:
XmlDocument.cs

指定した XmlWriterに XML ドキュメントを保存します。

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

注釈

空白は、 PreserveWhitespacetrue に設定されている場合にのみ保持されます。

XmlWriterのエンコードによって、書き出されるエンコードが決まります (XmlDeclaration ノードのエンコードは、XmlWriterのエンコードに置き換えられます)。 XmlWriterでエンコードが指定されていない場合、XmlDocumentはエンコード属性なしで保存されます。

ドキュメントが保存されると、ノード ID (LocalName + NamespaceURI) を正しく保持するために xmlns 属性が生成されます。 たとえば、次の 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 オーバーロードでは、整形式のフラグメントのみが保証されます。

こちらもご覧ください

適用対象