XElement.Save Metoda

Definice

Serializovat podkladový strom XML tohoto elementu.Serialize this element's underlying XML tree. Výstup lze uložit do souboru, do XmlTextWriter ,, TextWriter nebo XmlWriter .The output can be saved to a file, an XmlTextWriter, a TextWriter, or an XmlWriter. Volitelně můžete formátování (odsazení) zakázat.Optionally, formatting (indenting) can be disabled.

Přetížení

Save(Stream)

Vytvoří výstup XElement do určeného Stream .Outputs this XElement to the specified Stream.

Save(TextWriter)

Serializovat tento element na TextWriter .Serialize this element to a TextWriter.

Save(String)

Serializovat tento prvek do souboru.Serialize this element to a file.

Save(XmlWriter)

Serializovat tento element na XmlWriter .Serialize this element to an XmlWriter.

Save(Stream, SaveOptions)

Provede výstup XElement do zadaného Stream nastavení, volitelně určení chování formátování.Outputs this XElement to the specified Stream, optionally specifying formatting behavior.

Save(TextWriter, SaveOptions)

Serializovat tento element na TextWriter , volitelně zakázat formátování.Serialize this element to a TextWriter, optionally disabling formatting.

Save(String, SaveOptions)

Serializovat tento prvek do souboru, volitelně zakázat formátování.Serialize this element to a file, optionally disabling formatting.

Save(Stream)

Vytvoří výstup XElement do určeného 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
Public Sub Save (stream As Stream)

Parametry

stream
Stream

Datový proud, do kterého má být výstup vypsán XElement .The stream to output this XElement to.

Poznámky

Serializovaná XML bude odsazena.The serialized XML will be indented. Odeberou se všechny nevýznamné prázdné znaky a přidají se další prázdné znaky, aby se kód XML správně odsadí.All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. Chování této metody je, že nevýznamné prázdné znaky nebudou zachovány.The behavior of this method is that insignificant white space will not be preserved.

Chcete-li ovládat prázdné znaky, použijte přetížení Save , které přijímá SaveOptions jako parametr.If you want to control white space, use the overload of Save that takes SaveOptions as a parameter. Pomocí DisableFormatting Možnosti uložte neodsazený kód XML.Use the DisableFormatting option to save unindented XML. To způsobí, že zapisovač bude zapisovat všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.This will cause the writer to write all white spaces exactly as represented in the XML tree.

Tuto možnost použijte, OmitDuplicateNamespaces Pokud chcete odebrat duplicitní deklarace oboru názvů.Use the OmitDuplicateNamespaces option if you want to remove duplicate namespace declarations.

Platí pro

Save(TextWriter)

Serializovat tento element na 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
Public Sub Save (textWriter As TextWriter)

Parametry

textWriter
TextWriter

TextWriterKterý XElement bude zapsán do.A TextWriter that the XElement will be written to.

Příklady

Následující příklad vytvoří XElement , uloží dokument do a StringWriter poté vytiskne řetězec do konzoly.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  

Tento příklad vytvoří následující výstup:This example produces the following output:

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

Poznámky

Serializovaná XML bude odsazena.The serialized XML will be indented. Odeberou se všechny nevýznamné prázdné znaky a přidají se další prázdné znaky, aby se kód XML správně odsadí.All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. Chování této metody je, že prázdné znaky nebudou zachovány.The behavior of this method is that white space will not be preserved.

Chcete-li ovládat prázdné znaky, použijte přetížení Save , které umožňuje určit SaveOptions jako parametr.If you want to control white space, use the overload of Save that allows you to specify SaveOptions as a parameter. Další informace naleznete v tématu zachování prázdných znaků při načítání nebo analýze XML a Při serializaci zachovejte prázdnéznaky.For more information, see Preserve white space while loading or parsing XML and Preserve white space while serializing.

Platí pro

Save(String)

Serializovat tento prvek do souboru.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)

Parametry

fileName
String

A String který obsahuje název souboru.A String that contains the name of the file.

Příklady

Následující příklad vytvoří XElement , uloží dokument do souboru a pak ho vytiskne do konzoly.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)  

Tento příklad vytvoří následující výstup:This example produces the following output:

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

Poznámky

Serializovaná XML bude odsazena.The serialized XML will be indented. Odeberou se všechny nevýznamné prázdné znaky a přidají se další prázdné znaky, aby se kód XML správně odsadí.All insignificant white space will be removed, and additional white space will be added so that the XML will be properly indented. Chování této metody je, že nevýznamné uzly prázdného místa ve stromu XML nebudou zachovány.The behavior of this method is that insignificant white space nodes in the XML tree will not be preserved.

Chcete-li ovládat prázdné znaky, použijte přetížení Save , které umožňuje určit SaveOptions jako parametr.If you want to control white space, use the overload of Save that allows you to specify SaveOptions as a parameter. Další informace naleznete v tématu zachování prázdných znaků při načítání nebo analýze XML a Při serializaci zachovejte prázdnéznaky.For more information, see Preserve white space while loading or parsing XML and Preserve white space while serializing.

Platí pro

Save(XmlWriter)

Serializovat tento element na 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)

Parametry

writer
XmlWriter

XmlWriterKterý XElement bude zapsán do.A XmlWriter that the XElement will be written to.

Příklady

Následující příklad ukazuje, jak uložit XElement do XmlWriter .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())  

Tento příklad vytvoří následující výstup:This example produces the following output:

<Root><Child>child content</Child></Root>  

Platí pro

Save(Stream, SaveOptions)

Provede výstup XElement do zadaného Stream nastavení, volitelně určení chování formátování.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
Public Sub Save (stream As Stream, options As SaveOptions)

Parametry

stream
Stream

Datový proud, do kterého má být výstup vypsán XElement .The stream to output this XElement to.

options
SaveOptions

SaveOptionsObjekt, který určuje chování při formátování.A SaveOptions object that specifies formatting behavior.

Poznámky

Ve výchozím nastavení options jsou nastaveny na None .By default the options are set to None. Tento příkaz odebere všechny nadbytečné nevýznamné prázdné znaky a přidá vhodné nevýznamné prázdné znaky, aby byl kód XML správně odsazen.This option will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented.

Pokud chcete uložit neodsazený kód XML, zadejte DisableFormatting příznak pro options .If you want to save unindented XML, specify the DisableFormatting flag for options. To způsobí, že zapisovač bude zapisovat všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.This will cause the writer to write all white spaces exactly as represented in the XML tree.

Tuto OmitDuplicateNamespaces možnost použijte, pokud chcete odebrat duplicitní deklarace oboru názvů.Use OmitDuplicateNamespaces option if you want to remove duplicate namespace declarations.

Platí pro

Save(TextWriter, SaveOptions)

Serializovat tento element na TextWriter , volitelně zakázat formátování.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
Public Sub Save (textWriter As TextWriter, options As SaveOptions)

Parametry

textWriter
TextWriter

Pro TextWriter výstup do souboru XML.The TextWriter to output the XML to.

options
SaveOptions

SaveOptionsKterý určuje chování při formátování.A SaveOptions that specifies formatting behavior.

Příklady

Následující příklad ukazuje dvě použití této metody.The following example shows two uses of this method. První použití zachová prázdné znaky.The first use preserves white space. Druhá serializace XElement s formátováním.The second serializes the XElement with formatting. Vzhledem k tomu, že dokument neobsahuje prázdné znaky jako konstruované, zachovává prázdné znaky výstupy XML bez odsazení.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  

Tento příklad vytvoří následující výstup: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>  

Poznámky

Pokud chcete uložit neodsazený kód XML, zadejte DisableFormatting příznak pro options .If you want to save unindented XML, specify the DisableFormatting flag for options. To způsobí, že zapisovač bude zapisovat všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.This will cause the writer to write all white space exactly as represented in the XML tree.

Pokud chcete uložit odsazený kód XML, nezadávejte DisableFormatting příznak pro options .If you want to save indented XML, do not specify the DisableFormatting flag for options. Tím se odeberou všechny nadbytečné nevýznamné prázdné znaky a přidají se vhodné nevýznamné prázdné znaky, aby byl kód XML správně odsazený.This will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented. Toto je výchozí chování a chování přetížení Save metod, které nepřijímá options jako parametr.This is the default behavior, and the behavior of the overloads of the Save methods that do not take options as a parameter.

Další informace naleznete v tématu zachování prázdných znaků při načítání nebo analýze XML a Při serializaci zachovejte prázdnéznaky.For more information, see Preserve white space while loading or parsing XML and Preserve white space while serializing.

Platí pro

Save(String, SaveOptions)

Serializovat tento prvek do souboru, volitelně zakázat formátování.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)

Parametry

fileName
String

A String který obsahuje název souboru.A String that contains the name of the file.

options
SaveOptions

SaveOptionsKterý určuje chování při formátování.A SaveOptions that specifies formatting behavior.

Příklady

Následující příklad ukazuje dvě použití této metody.The following example shows two uses of this method. První použití zachová prázdné znaky.The first use preserves white space. Druhá z nich je serializována XElement s formátováním.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)  

Tento příklad vytvoří následující výstup: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>  

Poznámky

Pokud chcete uložit neodsazený kód XML, zadejte DisableFormatting příznak pro options .If you want to save unindented XML, specify the DisableFormatting flag for options. To způsobí, že zapisovač bude zapisovat všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.This will cause the writer to write all white space exactly as represented in the XML tree.

Pokud chcete uložit odsazený kód XML, nezadávejte DisableFormatting příznak pro options .If you want to save indented XML, do not specify the DisableFormatting flag for options. Tím se odeberou všechny nadbytečné nevýznamné prázdné znaky a přidají se vhodné nevýznamné prázdné znaky, aby byl kód XML správně odsazený.This will remove all extraneous insignificant white space, and add appropriate insignificant white space so that the XML is properly indented. Toto je výchozí chování a chování přetížení Save metod, které nepřijímá options jako parametr.This is the default behavior, and the behavior of the overloads of the Save methods that do not take options as a parameter.

Další informace naleznete v tématu zachování prázdných znaků při načítání nebo analýze XML a Při serializaci zachovejte prázdnéznaky.For more information, see Preserve white space while loading or parsing XML and Preserve white space while serializing.

Platí pro