Sdílet prostřednictvím


XStreamingElement.Save Metoda

Definice

Serializovat tento streamovací prvek. Výstup lze uložit do souboru, souboru XmlTextWriter, a , TextWriternebo XmlWriter. Volitelně je možné formátování (odsazení) zakázat.

Přetížení

Save(Stream)

Výstupem je XStreamingElement zadaný Stream.

Save(TextWriter)

Serializace tohoto streamovacího prvku na TextWriter.

Save(String)

Serializovat tento streamovací prvek do souboru.

Save(XmlWriter)

Serializovat tento streamovací prvek na XmlWriter.

Save(Stream, SaveOptions)

Vypíše toto XStreamingElement do zadaného Stream, volitelně určení chování formátování.

Save(TextWriter, SaveOptions)

Serializace tohoto streamovacího prvku na TextWriter, volitelně zakázání formátování.

Save(String, SaveOptions)

Serializace tohoto streamovacího prvku do souboru, volitelně zakázání formátování.

Save(Stream)

Výstupem je XStreamingElement zadaný 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 pro výstup tohoto XDocument příkazu.

Poznámky

Serializovaný XML se odsadí. Všechny nevýznamné prázdné znaky se odeberou a přidají se další prázdné znaky, aby se kód XML správně odsadil. Chování této metody spočívá v tom, že se nezachová nevýznamné prázdné místo.

Pokud chcete řídit prázdné místo, použijte přetížení Save , které přebírá SaveOptions jako parametr. DisableFormatting Pomocí možnosti uložte nendented XML. To způsobí, že zapisovač zapisuje všechny prázdné mezery přesně tak, jak je znázorněno ve stromu XML.

Pokud chcete odebrat duplicitní deklarace oboru názvů, použijte OmitDuplicateNamespaces možnost.

Platí pro

Save(TextWriter)

Serializace tohoto streamovacího prvku na 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

A TextWriter to XStreamingElement bude napsané.

Příklady

Následující příklad vytvoří zdrojový strom XML a vytvoří instanci XStreamingElement pomocí dotazu na zdrojový strom XML. Potom zapíše prvek streamování do objektu StringWriter.

XElement srcTree = new XElement("Root",  
                       new XElement("Child", 1),  
                       new XElement("Child", 2),  
                       new XElement("Child", 3),  
                       new XElement("Child", 4),  
                       new XElement("Child", 5)  
                   );  

XStreamingElement dstTree = new XStreamingElement("NewRoot",  
                        from el in srcTree.Elements()  
                        where (int)el >= 3  
                        select new XElement("DifferentChild", (int)el)  
                    );  

StringBuilder sb = new StringBuilder();  
dstTree.Save(new StringWriter(sb));  
Console.WriteLine(sb.ToString());  
Dim srcTree As XElement = _  
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  

Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _  
                        From el In srcTree.Elements() _  
                        Where el.Value >= 3 _  
                        Select <DifferentChild><%= el.Value %></DifferentChild> _  
                    )  

Dim sb As StringBuilder = New StringBuilder()  
dstTree.Save(New StringWriter(sb))  
Console.WriteLine(sb.ToString())  

Tento příklad vytvoří následující výstup:

<?xml version="1.0" encoding="utf-16"?>  
<NewRoot>  
  <DifferentChild>3</DifferentChild>  
  <DifferentChild>4</DifferentChild>  
  <DifferentChild>5</DifferentChild>  
</NewRoot>  

Poznámky

Serializovaný XML se odsadí. Všechny nevýznamné prázdné znaky se odeberou a přidají se další prázdné znaky, aby se kód XML správně odsadil. Chování této metody spočívá v tom, že se nezachovají nevýznamné prázdné uzly ve stromu XML.

Pokud chcete řídit prázdné místo, použijte jeden z přetížení Save , které přebírají SaveOptions jako parametr. Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Viz také

Platí pro

Save(String)

Serializovat tento streamovací prvek do souboru.

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 obsahující název souboru.

Příklady

Následující příklad vytvoří streamované strom XML. Potom serializuje streamované strom XML do souboru.

XElement srcTree = new XElement("Root",  
                       new XElement("Child", 1),  
                       new XElement("Child", 2),  
                       new XElement("Child", 3),  
                       new XElement("Child", 4),  
                       new XElement("Child", 5)  
                   );  

XStreamingElement dstTree = new XStreamingElement("NewRoot",  
                        from el in srcTree.Elements()  
                        where (int)el >= 3  
                        select new XElement("DifferentChild", (int)el)  
                    );  

dstTree.Save("Test.xml");  
Console.WriteLine(File.ReadAllText("Test.xml"));  
Dim srcTree As XElement = _  
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  

Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _  
                        From el In srcTree.Elements() _  
                        Where el.Value >= 3 _  
                        Select <DifferentChild><%= el.Value %></DifferentChild> _  
                    )  

dstTree.Save("Test.xml")  
Console.WriteLine(File.ReadAllText("Test.xml"))  

Tento příklad vytvoří následující výstup:

<?xml version="1.0" encoding="utf-8"?>  
<NewRoot>  
  <DifferentChild>3</DifferentChild>  
  <DifferentChild>4</DifferentChild>  
  <DifferentChild>5</DifferentChild>  
</NewRoot>  

Poznámky

Serializovaný XML se odsadí. Všechny nevýznamné prázdné znaky se odeberou a přidají se další prázdné znaky, aby se kód XML správně odsadil. Chování této metody spočívá v tom, že se nezachovají nevýznamné prázdné uzly ve stromu XML.

Pokud chcete řídit prázdné místo, použijte jeden z přetížení Save , které přebírají SaveOptions jako parametr. Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Viz také

Platí pro

Save(XmlWriter)

Serializovat tento streamovací prvek na 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

A XmlWriter to XElement bude napsané.

Příklady

Následující příklad vytvoří XStreamingElement a zapíše ho XmlWriterdo souboru .

XElement srcTree = new XElement("Root",  
                       new XElement("Child", 1),  
                       new XElement("Child", 2),  
                       new XElement("Child", 3),  
                       new XElement("Child", 4),  
                       new XElement("Child", 5)  
                   );  

StringBuilder sb = new StringBuilder();  
XmlWriterSettings xws = new XmlWriterSettings();  
xws.OmitXmlDeclaration = true;  
using (XmlWriter xw = XmlWriter.Create(sb, xws))  
{  
    XStreamingElement dstTree = new XStreamingElement("NewRoot",  
                            from el in srcTree.Elements()  
                            where (int)el == 5  
                            select new XElement("DifferentChild", (int)el)  
                        );  

    dstTree.Save(xw);  
}  
Console.WriteLine(sb.ToString());  
Dim srcTree As XElement = _  
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  

Dim sb As StringBuilder = New StringBuilder()  
Dim xws As XmlWriterSettings = New XmlWriterSettings()  
xws.OmitXmlDeclaration = True  
Using xw As XmlWriter = XmlWriter.Create(sb, xws)  
    Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _  
                            From el In srcTree.Elements() _  
                            Where el.Value = 5 _  
                            Select <DifferentChild><%= el.Value %></DifferentChild> _  
                        )  
    dstTree.Save(xw)  
End Using  
Console.WriteLine(sb.ToString())  

Tento příklad vytvoří následující výstup:

<NewRoot><DifferentChild>5</DifferentChild></NewRoot>  

Viz také

Platí pro

Save(Stream, SaveOptions)

Vypíše toto XStreamingElement do zadaného Stream, volitelně určení chování formátování.

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 pro výstup tohoto XDocument příkazu.

options
SaveOptions

Objekt SaveOptions , který určuje chování formátování.

Poznámky

Ve výchozím nastavení jsou nastaveny options na None. Tato možnost odebere všechny nadbytečné nevýznamné prázdné znaky a přidá odpovídající nevýznamné prázdné znaky, aby byl XML správně odsazený.

Pokud chcete uložit nendented XML, zadejte DisableFormatting příznak pro options. To způsobí, že zapisovač zapisuje všechny prázdné mezery přesně tak, jak je znázorněno ve stromu XML.

Pokud chcete odebrat duplicitní deklarace oboru názvů, použijte OmitDuplicateNamespaces možnost.

Platí pro

Save(TextWriter, SaveOptions)

Serializace tohoto streamovacího prvku na TextWriter, volitelně zakázání formátování.

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

Výstup TextWriter XML do.

options
SaveOptions

Určuje SaveOptions chování formátování.

Příklady

Následující příklad ukazuje dvě použití této metody. První použití zachovává prázdné místo. Druhý serializuje XStreamingElement formát.

XElement srcTree = new XElement("Root",  
                       new XElement("Child", 1),  
                       new XElement("Child", 2),  
                       new XElement("Child", 3),  
                       new XElement("Child", 4),  
                       new XElement("Child", 5)  
                   );  

XStreamingElement dstTree = new XStreamingElement("NewRoot",  
                        from el in srcTree.Elements()  
                        where (int)el == 3  
                        select new XElement("DifferentChild", (int)el)  
                    );  

StringBuilder sb = new StringBuilder();  
dstTree.Save(new StringWriter(sb), SaveOptions.DisableFormatting);  
Console.WriteLine(sb.ToString());  
Console.WriteLine("------");  
sb = new StringBuilder();  
dstTree.Save(new StringWriter(sb), SaveOptions.None);  
Console.WriteLine(sb.ToString());  
Dim srcTree As XElement = _  
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  

Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _  
                        From el In srcTree.Elements() _  
                        Where el.Value = 3 _  
                        Select <DifferentChild><%= el.Value %></DifferentChild> _  
                    )  

Dim sb As StringBuilder = New StringBuilder()  
dstTree.Save(New StringWriter(sb), SaveOptions.DisableFormatting)  
Console.WriteLine(sb.ToString())  
Console.WriteLine("------")  
sb = New StringBuilder()  
dstTree.Save(New StringWriter(sb), SaveOptions.None)  
Console.WriteLine(sb.ToString())  

Tento příklad vytvoří následující výstup:

<?xml version="1.0" encoding="utf-16"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>  
------  
<?xml version="1.0" encoding="utf-16"?>  
<NewRoot>  
  <DifferentChild>3</DifferentChild>  
</NewRoot>  

Poznámky

Pokud chcete uložit nendented XML, zadejte DisableFormatting příznak pro options. To způsobí, že zapisovač zapisuje všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.

Pokud chcete uložit odsazený kód XML, nezadávejte DisableFormatting příznak pro options. Tím se odeberou všechny nadbytečné nevýznamné prázdné znaky a přidá se odpovídající nevýznamné prázdné znaky, aby byl XML správně odsazený. Toto je výchozí chování a chování přetížení Save metod, které nepřebírají options jako parametr.

Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Viz také

Platí pro

Save(String, SaveOptions)

Serializace tohoto streamovacího prvku do souboru, volitelně zakázání formátování.

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 obsahující název souboru.

options
SaveOptions

Objekt SaveOptions , který určuje chování formátování.

Příklady

Následující příklad ukazuje dvě použití této metody. První použití zachovává prázdné místo. Druhý serializuje XStreamingElement formát.

XElement srcTree = new XElement("Root",  
                       new XElement("Child", 1),  
                       new XElement("Child", 2),  
                       new XElement("Child", 3),  
                       new XElement("Child", 4),  
                       new XElement("Child", 5)  
                   );  

XStreamingElement dstTree = new XStreamingElement("NewRoot",  
                        from el in srcTree.Elements()  
                        where (int)el == 3  
                        select new XElement("DifferentChild", (int)el)  
                    );  

dstTree.Save("Test1.xml", SaveOptions.DisableFormatting);  
dstTree.Save("Test2.xml", SaveOptions.None);  
Console.WriteLine(File.ReadAllText("Test1.xml"));  
Console.WriteLine("------");  
Console.WriteLine(File.ReadAllText("Test2.xml"));  
Dim srcTree As XElement = _  
    <Root>  
        <Child>1</Child>  
        <Child>2</Child>  
        <Child>3</Child>  
        <Child>4</Child>  
        <Child>5</Child>  
    </Root>  

Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _  
                        From el In srcTree.Elements() _  
                        Where el.Value = 3 _  
                        Select <DifferentChild><%= el.Value %></DifferentChild> _  
                    )  

dstTree.Save("Test1.xml", SaveOptions.DisableFormatting)  
dstTree.Save("Test2.xml", SaveOptions.None)  
Console.WriteLine(File.ReadAllText("Test1.xml"))  
Console.WriteLine("------")  
Console.WriteLine(File.ReadAllText("Test2.xml"))  

Tento příklad vytvoří následující výstup:

<?xml version="1.0" encoding="utf-8"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>  
------  
<?xml version="1.0" encoding="utf-8"?>  
<NewRoot>  
  <DifferentChild>3</DifferentChild>  
</NewRoot>  

Poznámky

Pokud chcete uložit nendented XML, zadejte DisableFormatting příznak pro options. To způsobí, že zapisovač zapisuje všechny prázdné znaky přesně tak, jak je znázorněno ve stromu XML.

Pokud chcete uložit odsazený kód XML, nezadávejte DisableFormatting příznak pro options. Tím se odeberou všechny nadbytečné nevýznamné prázdné znaky a přidá se odpovídající nevýznamné prázdné znaky, aby byl XML správně odsazený. Toto je výchozí chování a chování přetížení Save metod, které nepřebírají options jako parametr.

Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Viz také

Platí pro