XElement.Save XElement.Save XElement.Save XElement.Save Method

定義

この要素の基になる XML ツリーをシリアル化します。Serialize this element's underlying XML tree. 出力は、ファイル、XmlTextWriterTextWriter、または XmlWriter に保存できます。The output can be saved to a file, an XmlTextWriter, a TextWriter, or an XmlWriter. 必要に応じて、書式設定 (インデント) を無効にできます。Optionally, formatting (indenting) can be disabled.

オーバーロード

Save(Stream) Save(Stream) Save(Stream)

この XElement を指定した Stream に出力します。Outputs this XElement to the specified Stream.

Save(TextWriter) Save(TextWriter) Save(TextWriter)

この要素をシリアル化して TextWriter に書き込みます。Serialize this element to a TextWriter.

Save(String) Save(String) Save(String) Save(String)

この要素をシリアル化してファイルに書き込みます。Serialize this element to a file.

Save(XmlWriter) Save(XmlWriter) Save(XmlWriter) Save(XmlWriter)

この要素をシリアル化して XmlWriter に書き込みます。Serialize this element to an XmlWriter.

Save(Stream, SaveOptions) Save(Stream, SaveOptions) Save(Stream, SaveOptions)

オプションで書式設定動作を指定して、指定した Stream にこの XElement を出力します。Outputs this XElement to the specified Stream, optionally specifying formatting behavior.

Save(TextWriter, SaveOptions) Save(TextWriter, SaveOptions) Save(TextWriter, SaveOptions)

この要素をシリアル化して TextWriter に書き込み、必要に応じて、書式設定を無効にします。Serialize this element to a TextWriter, optionally disabling formatting.

Save(String, SaveOptions) Save(String, SaveOptions) Save(String, SaveOptions) Save(String, SaveOptions)

この要素をシリアル化してファイルに書き込み、オプションで、書式設定を無効にします。Serialize this element to a file, optionally disabling formatting.

Save(Stream) Save(Stream) Save(Stream)

この XElement を指定した Stream に出力します。Outputs this XElement to the specified Stream.

public:
 void Save(System::IO::Stream ^ stream);
public void Save (System.IO.Stream stream);
member this.Save : System.IO.Stream -> unit

パラメーター

stream
Stream Stream Stream Stream

この XElement の出力先のストリーム。The stream to output this XElement to.

注釈

シリアル化された XML はインデントされます。The serialized XML will be indented. 意味のない空白はすべて削除され、XML が適切にインデントされるように追加の空白が追加されます。All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. このメソッドの動作は、意味のない空白文字が保持されないことです。The behavior of this method is that insignificant white space will not be preserved.

空白を制御する場合は、パラメーターとしてをSave受け取るSaveOptionsのオーバーロードを使用します。If you want to control white space, use the overload of Save that takes SaveOptions as a parameter. インデントされ XML DisableFormattingを保存するには、オプションを使用します。Use the DisableFormatting option to save unindented XML. これにより、ライターは XML ツリーに示されているすべての空白文字を正確に書き込みます。This will cause the writer to write all white spaces exactly as represented in the XML tree.

重複するOmitDuplicateNamespaces名前空間宣言を削除する場合は、オプションを使用します。Use the OmitDuplicateNamespaces option if you want to remove duplicate namespace declarations.

Save(TextWriter) Save(TextWriter) Save(TextWriter)

この要素をシリアル化して TextWriter に書き込みます。Serialize this element to a TextWriter.

public:
 void Save(System::IO::TextWriter ^ textWriter);
public void Save (System.IO.TextWriter textWriter);
member this.Save : System.IO.TextWriter -> unit

パラメーター

textWriter
TextWriter TextWriter TextWriter TextWriter

XElement の書き込み先の TextWriterA TextWriter that the XElement will be written to.

次の例ではXElement、を作成し、ドキュメントStringWriterをに保存してから、文字列をコンソールに出力します。The following example creates an XElement, saves the document to a StringWriter, and then prints the string to the console.

XElement root = XElement.Parse(@"<Root> <Child> Text </Child> </Root>");  
using (StringWriter sw = new StringWriter()) {  
    root.Save(sw);  
    Console.WriteLine(sw.ToString());  
}  
Dim root As XElement = <Root><Child> Text </Child></Root>  
Using sw = New StringWriter()  
    root.Save(sw)  
    Console.WriteLine(sw.ToString())  
End Using  

この例を実行すると、次の出力が生成されます。This example produces the following output:

<?xml version="1.0" encoding="utf-16"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

注釈

シリアル化された XML はインデントされます。The serialized XML will be indented. 意味のない空白はすべて削除され、XML が適切にインデントされるように追加の空白が追加されます。All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. このメソッドの動作は、空白が保持されないことです。The behavior of this method is that white space will not be preserved.

空白を制御する場合は、パラメーターとしてをSave指定SaveOptionsできるのオーバーロードを使用します。If you want to control white space, use the overload of Save that allows you to specify SaveOptions as a parameter. 詳細については、「 XML の読み込み時または解析時の空白の保持」と「シリアル化時の空白の維持」を参照してください。For more information, see Preserving White Space while Loading or Parsing XML and Preserving White Space While Serializing.

こちらもご覧ください

Save(String) Save(String) Save(String) Save(String)

この要素をシリアル化してファイルに書き込みます。Serialize this element to a file.

public:
 void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)

パラメーター

fileName
String String String String

ファイルの名前を格納する StringA String that contains the name of the file.

次の例ではXElement、を作成し、ドキュメントをファイルに保存してから、そのファイルをコンソールに出力します。The following example creates an XElement, saves the document to a file, and then prints the file to the console.

XElement root = new XElement("Root",  
    new XElement("Child", "child content")  
);  
root.Save("Root.xml");  
string str = File.ReadAllText("Root.xml");  
Console.WriteLine(str);  
Dim root As XElement = _   
        <Root>  
            <Child>child content</Child>  
        </Root>  
root.Save("Root.xml")  
Dim Str As String = File.ReadAllText("Root.xml")  
Console.WriteLine(Str)  

この例を実行すると、次の出力が生成されます。This example produces the following output:

<?xml version="1.0" encoding="utf-8"?>  
<Root>  
  <Child>child content</Child>  
</Root>  

注釈

シリアル化された XML はインデントされます。The serialized XML will be indented. 意味のない空白はすべて削除され、XML が適切にインデントされるように追加の空白が追加されます。All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. このメソッドの動作は、XML ツリー内の意味のない空白ノードが保持されないことです。The behavior of this method is that insignificant white space nodes in the XML tree will not be preserved.

空白を制御する場合は、パラメーターとしてをSave指定SaveOptionsできるのオーバーロードを使用します。If you want to control white space, use the overload of Save that allows you to specify SaveOptions as a parameter. 詳細については、「 XML の読み込み時または解析時の空白の保持」と「シリアル化時の空白の維持」を参照してください。For more information, see Preserving White Space while Loading or Parsing XML and Preserving White Space While Serializing.

こちらもご覧ください

Save(XmlWriter) Save(XmlWriter) Save(XmlWriter) Save(XmlWriter)

この要素をシリアル化して XmlWriter に書き込みます。Serialize this element to an XmlWriter.

public:
 void Save(System::Xml::XmlWriter ^ writer);
public void Save (System.Xml.XmlWriter writer);
member this.Save : System.Xml.XmlWriter -> unit
Public Sub Save (writer As XmlWriter)

パラメーター

writer
XmlWriter XmlWriter XmlWriter XmlWriter

XElement の書き込み先の XmlWriterA XmlWriter that the XElement will be written to.

XElementXmlWriter に保存する方法を次の例に示します。The following example shows how to save an XElement to an XmlWriter.

StringBuilder sb = new StringBuilder();  
XmlWriterSettings xws = new XmlWriterSettings();  
xws.OmitXmlDeclaration = true;  
using (XmlWriter xw = XmlWriter.Create(sb, xws)) {  
    XElement root = new XElement("Root",  
        new XElement("Child", "child content")  
    );  
    root.Save(xw);  
}  
Console.WriteLine(sb.ToString());  
Dim sb As StringBuilder = New StringBuilder()  
Dim xws As XmlWriterSettings = New XmlWriterSettings()  
xws.OmitXmlDeclaration = True  
Using xw = XmlWriter.Create(sb, xws)  
    Dim root As XElement = <Root>  
                               <Child>child content</Child>  
                           </Root>  
    root.Save(xw)  
End Using  
Console.WriteLine(sb.ToString())  

この例を実行すると、次の出力が生成されます。This example produces the following output:

<Root><Child>child content</Child></Root>  
こちらもご覧ください

Save(Stream, SaveOptions) Save(Stream, SaveOptions) Save(Stream, SaveOptions)

オプションで書式設定動作を指定して、指定した Stream にこの XElement を出力します。Outputs this XElement to the specified Stream, optionally specifying formatting behavior.

public:
 void Save(System::IO::Stream ^ stream, System::Xml::Linq::SaveOptions options);
public void Save (System.IO.Stream stream, System.Xml.Linq.SaveOptions options);
member this.Save : System.IO.Stream * System.Xml.Linq.SaveOptions -> unit

パラメーター

stream
Stream Stream Stream Stream

この XElement の出力先のストリーム。The stream to output this XElement to.

options
SaveOptions SaveOptions SaveOptions SaveOptions

書式設定の動作を指定する SaveOptions オブジェクト。A SaveOptions object that specifies formatting behavior.

注釈

既定ではoptions 、はにNone設定されています。By default the options are set to None. このオプションを選択すると、余分な意味のない空白がすべて削除され、XML が適切にインデントされるように、適切ではない空白文字が追加されます。This option will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented.

インデントされ XML を保存する場合は、のDisableFormatting optionsフラグを指定します。If you want to save unindented XML, specify the DisableFormatting flag for options. これにより、ライターは XML ツリーに示されているすべての空白文字を正確に書き込みます。This will cause the writer to write all white spaces exactly as represented in the XML tree.

重複OmitDuplicateNamespacesする名前空間宣言を削除する場合は、オプションを使用します。Use OmitDuplicateNamespaces option if you want to remove duplicate namespace declarations.

Save(TextWriter, SaveOptions) Save(TextWriter, SaveOptions) Save(TextWriter, SaveOptions)

この要素をシリアル化して TextWriter に書き込み、必要に応じて、書式設定を無効にします。Serialize this element to a TextWriter, optionally disabling formatting.

public:
 void Save(System::IO::TextWriter ^ textWriter, System::Xml::Linq::SaveOptions options);
public void Save (System.IO.TextWriter textWriter, System.Xml.Linq.SaveOptions options);
member this.Save : System.IO.TextWriter * System.Xml.Linq.SaveOptions -> unit

パラメーター

textWriter
TextWriter TextWriter TextWriter TextWriter

XML を出力する TextWriterThe TextWriter to output the XML to.

options
SaveOptions SaveOptions SaveOptions SaveOptions

書式設定の動作を指定する SaveOptionsA SaveOptions that specifies formatting behavior.

このメソッドの2つの使用例を次に示します。The following example shows two uses of this method. 最初の使用では、空白が保持されます。The first use preserves white space. 2番目のXElementは、書式設定を使用してをシリアル化します。The second serializes the XElement with formatting. ドキュメントには構築された空白が含まれていないため、空白を維持すると、インデントなしで XML が出力されます。Because the document has no white space in it as constructed, preserving white space outputs the XML without any indenting.

XElement root = XElement.Parse(@"<Root> <Child> Text </Child> </Root>");  

using (StringWriter sw = new StringWriter())  
{  
    root.Save(sw, SaveOptions.DisableFormatting);  
    Console.WriteLine(sw.ToString());  
}  

Console.WriteLine("=====");  

using (StringWriter sw = new StringWriter())  
{  
    root.Save(sw, SaveOptions.None);  
    Console.WriteLine(sw.ToString());  
}  
Dim root As XElement = <Root><Child> Text </Child></Root>  

Using sw = New StringWriter()  
    root.Save(sw, SaveOptions.DisableFormatting)  
    Console.WriteLine(sw.ToString())  
End Using  

Console.WriteLine("=====")  

Using sw = New StringWriter()  
    root.Save(sw, SaveOptions.None)  
    Console.WriteLine(sw.ToString())  
End Using  

この例を実行すると、次の出力が生成されます。This example produces the following output:

<?xml version="1.0" encoding="utf-16"?><Root><Child> Text </Child></Root>  
=====  
<?xml version="1.0" encoding="utf-16"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

注釈

インデントされ XML を保存する場合は、のDisableFormatting optionsフラグを指定します。If you want to save unindented XML, specify the DisableFormatting flag for options. これにより、ライターは XML ツリーで表されるすべての空白を正確に書き込みます。This will cause the writer to write all white space exactly as represented in the XML tree.

インデントされた XML を保存する場合は、のDisableFormatting optionsフラグを指定しないでください。If you want to save indented XML, do not specify the DisableFormatting flag for options. これにより、余分に意味のない空白がすべて削除され、XML が適切にインデントされるように、適切でない空白が追加されます。This will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented. これは既定の動作であり、パラメーターとして受け取らSave optionsないメソッドのオーバーロードの動作です。This is the default behavior, and the behavior of the overloads of the Save methods that do not take options as a parameter.

詳細については、「 XML の読み込み時または解析時の空白の保持」と「シリアル化時の空白の維持」を参照してください。For more information, see Preserving White Space while Loading or Parsing XML and Preserving White Space While Serializing.

こちらもご覧ください

Save(String, SaveOptions) Save(String, SaveOptions) Save(String, SaveOptions) Save(String, SaveOptions)

この要素をシリアル化してファイルに書き込み、オプションで、書式設定を無効にします。Serialize this element to a file, optionally disabling formatting.

public:
 void Save(System::String ^ fileName, System::Xml::Linq::SaveOptions options);
public void Save (string fileName, System.Xml.Linq.SaveOptions options);
member this.Save : string * System.Xml.Linq.SaveOptions -> unit
Public Sub Save (fileName As String, options As SaveOptions)

パラメーター

fileName
String String String String

ファイルの名前を格納する StringA String that contains the name of the file.

options
SaveOptions SaveOptions SaveOptions SaveOptions

書式設定の動作を指定する SaveOptionsA SaveOptions that specifies formatting behavior.

このメソッドの2つの使用例を次に示します。The following example shows two uses of this method. 最初の使用では、空白が保持されます。The first use preserves white space. 2つ目は、 XElement書式設定を使用してをシリアル化します。The second one serializes the XElement with formatting.

string str;  
XElement root = XElement.Parse(@"<Root> <Child> Text </Child> </Root>");  

root.Save("Root.xml", SaveOptions.DisableFormatting);  
str = File.ReadAllText("Root.xml");  
Console.WriteLine(str);  

Console.WriteLine("=====");  

root.Save("Root.xml", SaveOptions.None);  
str = File.ReadAllText("Root.xml");  
Console.WriteLine(str);  
Dim str As String  
Dim root As XElement = <Root><Child> Text </Child></Root>  

root.Save("Root.xml", SaveOptions.DisableFormatting)  
str = File.ReadAllText("Root.xml")  
Console.WriteLine(str)  

Console.WriteLine("=====")  

root.Save("Root.xml", SaveOptions.None)  
str = File.ReadAllText("Root.xml")  
Console.WriteLine(str)  

この例を実行すると、次の出力が生成されます。This example produces the following output:

<?xml version="1.0" encoding="utf-8"?><Root><Child> Text </Child></Root>  
=====  
<?xml version="1.0" encoding="utf-8"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

注釈

インデントされ XML を保存する場合は、のDisableFormatting optionsフラグを指定します。If you want to save unindented XML, specify the DisableFormatting flag for options. これにより、ライターは XML ツリーで表されるすべての空白を正確に書き込みます。This will cause the writer to write all white space exactly as represented in the XML tree.

インデントされた XML を保存する場合は、のDisableFormatting optionsフラグを指定しないでください。If you want to save indented XML, do not specify the DisableFormatting flag for options. これにより、余分に意味のない空白がすべて削除され、XML が適切にインデントされるように、適切でない空白が追加されます。This will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented. これは既定の動作であり、パラメーターとして受け取らSave optionsないメソッドのオーバーロードの動作です。This is the default behavior, and the behavior of the overloads of the Save methods that do not take options as a parameter.

詳細については、「 XML の読み込み時または解析時の空白の保持」と「シリアル化時の空白の維持」を参照してください。For more information, see Preserving White Space while Loading or Parsing XML and Preserving White Space While Serializing.

こちらもご覧ください

適用対象