XStreamingElement.Save Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Serialisiert dieses Streamingelement. Die Ausgabe kann in einer Datei, einem XmlTextWriter, einem TextWriter oder einem XmlWriter gespeichert werden. Die Formatierung (Einzug) kann optional deaktiviert werden.
Überlädt
Save(Stream) |
Gibt diesen XStreamingElement an den angegebenen Stream aus. |
Save(TextWriter) |
Serialisiert dieses Streamingelement in einen TextWriter. |
Save(String) |
Serialisiert dieses Streamingelement in einer Datei. |
Save(XmlWriter) |
Serialisiert dieses Streamingelement in einen XmlWriter. |
Save(Stream, SaveOptions) |
Gibt dieses XStreamingElement zum angegebenen Stream aus und gibt Formatierungsverhalten optional an. |
Save(TextWriter, SaveOptions) |
Serialisiert dieses Streamingelement in einen TextWriter, wobei optional die Formatierung deaktiviert wird. |
Save(String, SaveOptions) |
Serialisiert dieses Streamingelement in eine Datei, wobei optional die Formatierung deaktiviert wird. |
Save(Stream)
Gibt diesen XStreamingElement an den angegebenen Stream aus.
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)
Parameter
Hinweise
Der serialisierte XML-Code wird eingerückt. Alle unbedeutenden Leerzeichen werden entfernt, und zusätzlicher Leerraum wird hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt wird. Das Verhalten dieser Methode besteht darin, dass unbedeutende Leerzeichen nicht erhalten bleiben.
Wenn Sie den Leerraum steuern möchten, verwenden Sie die Überladung, Save die als Parameter verwendet wird SaveOptions . Verwenden Sie die DisableFormatting Option zum Speichern unbeabsichtigter XML-Dateien. Dadurch wird der Writer dazu führen, dass alle Leerzeichen genau wie in der XML-Struktur dargestellt geschrieben werden.
Verwenden Sie OmitDuplicateNamespaces die Option, wenn Sie doppelte Namespacedeklarationen entfernen möchten.
Gilt für
Save(TextWriter)
Serialisiert dieses Streamingelement in einen 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)
Parameter
- textWriter
- TextWriter
Ein TextWriter, in den das XStreamingElement geschrieben wird.
Beispiele
Im folgenden Beispiel wird eine XML-Quellstruktur erstellt und anschließend eine XStreamingElement Abfrage in der XML-Quellstruktur instanziiert. Anschließend wird das Streamingelement in ein 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())
Dieses Beispiel erzeugt die folgende Ausgabe:
<?xml version="1.0" encoding="utf-16"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
<DifferentChild>4</DifferentChild>
<DifferentChild>5</DifferentChild>
</NewRoot>
Hinweise
Der serialisierte XML-Code wird eingerückt. Alle unbedeutenden Leerzeichen werden entfernt, und zusätzlicher Leerraum wird hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt wird. Das Verhalten dieser Methode besteht darin, dass unbedeutende Leerraumknoten in der XML-Struktur nicht beibehalten werden.
Wenn Sie Leerraum steuern möchten, verwenden Sie eine der Überladungen Save , die als Parameter verwendet werden SaveOptions . Weitere Informationen finden Sie unter Beibehalten des Leerraums beim Laden oder Analysieren von XML und Beibehalten von Leerzeichen beim Serialisieren.
Siehe auch
Gilt für
Save(String)
Serialisiert dieses Streamingelement in einer Datei.
public:
void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)
Parameter
Beispiele
Im folgenden Beispiel wird eine XML-Streamingstruktur erstellt. Anschließend wird die Streaming-XML-Struktur in eine Datei serialisiert.
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"))
Dieses Beispiel erzeugt die folgende Ausgabe:
<?xml version="1.0" encoding="utf-8"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
<DifferentChild>4</DifferentChild>
<DifferentChild>5</DifferentChild>
</NewRoot>
Hinweise
Der serialisierte XML-Code wird eingerückt. Alle unbedeutenden Leerzeichen werden entfernt, und zusätzlicher Leerraum wird hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt wird. Das Verhalten dieser Methode besteht darin, dass unbedeutende Leerraumknoten in der XML-Struktur nicht beibehalten werden.
Wenn Sie Leerraum steuern möchten, verwenden Sie eine der Überladungen Save , die als Parameter verwendet werden SaveOptions . Weitere Informationen finden Sie unter Beibehalten des Leerraums beim Laden oder Analysieren von XML und Beibehalten von Leerzeichen beim Serialisieren.
Siehe auch
Gilt für
Save(XmlWriter)
Serialisiert dieses Streamingelement in einen 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)
Parameter
Beispiele
Im folgenden Beispiel wird ein XStreamingElement Objekt erstellt und in ein XmlWriter.
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())
Dieses Beispiel erzeugt die folgende Ausgabe:
<NewRoot><DifferentChild>5</DifferentChild></NewRoot>
Siehe auch
Gilt für
Save(Stream, SaveOptions)
Gibt dieses XStreamingElement zum angegebenen Stream aus und gibt Formatierungsverhalten optional an.
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)
Parameter
- options
- SaveOptions
Ein SaveOptions-Objekt, das das Formatierungsverhalten angibt.
Hinweise
Standardmäßig ist die options
Einstellung auf None. Mit dieser Option werden alle unbedeutenden Leerzeichen entfernt, und es werden unbedeutende Leerzeichen hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt ist.
Wenn Sie unzustellbare XML speichern möchten, geben Sie das DisableFormatting Flag für options
. Dadurch wird der Writer dazu führen, dass alle Leerzeichen genau wie in der XML-Struktur dargestellt geschrieben werden.
Verwenden Sie OmitDuplicateNamespaces die Option, wenn Sie doppelte Namespacedeklarationen entfernen möchten.
Gilt für
Save(TextWriter, SaveOptions)
Serialisiert dieses Streamingelement in einen TextWriter, wobei optional die Formatierung deaktiviert wird.
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)
Parameter
- textWriter
- TextWriter
Der TextWriter, an den das XML ausgegeben werden soll.
- options
- SaveOptions
Ein SaveOptions, das Formatierungsverhalten angibt.
Beispiele
Das folgende Beispiel zeigt zwei Verwendungen dieser Methode. Die erste Verwendung behält Leerzeichen bei. Die zweite serialisiert die XStreamingElement Formatierung.
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())
Dieses Beispiel erzeugt die folgende Ausgabe:
<?xml version="1.0" encoding="utf-16"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>
------
<?xml version="1.0" encoding="utf-16"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
</NewRoot>
Hinweise
Wenn Sie unzustellbare XML speichern möchten, geben Sie das DisableFormatting Flag für options
. Dadurch wird der Writer dazu führen, dass alle Leerzeichen genau wie in der XML-Struktur dargestellt geschrieben werden.
Wenn Sie eingezogenes XML speichern möchten, geben Sie das DisableFormatting Kennzeichen für options
. Dadurch werden alle unbedeutenden Leerzeichen entfernt, und es werden unbedeutende Leerzeichen hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt ist. Dies ist das Standardverhalten und das Verhalten der Überladungen der Save Methoden, die nicht als Parameter verwendet werden options
.
Weitere Informationen finden Sie unter Beibehalten des Leerraums beim Laden oder Analysieren von XML und Beibehalten von Leerzeichen beim Serialisieren.
Siehe auch
Gilt für
Save(String, SaveOptions)
Serialisiert dieses Streamingelement in eine Datei, wobei optional die Formatierung deaktiviert wird.
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)
Parameter
- options
- SaveOptions
Ein SaveOptions-Objekt, das das Formatierungsverhalten angibt.
Beispiele
Das folgende Beispiel zeigt zwei Verwendungen dieser Methode. Die erste Verwendung behält Leerzeichen bei. Die zweite serialisiert die XStreamingElement Formatierung.
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"))
Dieses Beispiel erzeugt die folgende Ausgabe:
<?xml version="1.0" encoding="utf-8"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>
------
<?xml version="1.0" encoding="utf-8"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
</NewRoot>
Hinweise
Wenn Sie unzustellbare XML speichern möchten, geben Sie das DisableFormatting Flag für options
. Dadurch wird der Writer dazu führen, dass alle Leerzeichen genau wie in der XML-Struktur dargestellt geschrieben werden.
Wenn Sie eingezogenes XML speichern möchten, geben Sie das DisableFormatting Kennzeichen für options
. Dadurch werden alle unbedeutenden Leerzeichen entfernt, und es werden unbedeutende Leerzeichen hinzugefügt, sodass der XML-Code ordnungsgemäß eingerückt ist. Dies ist das Standardverhalten und das Verhalten der Überladungen der Save Methoden, die nicht als Parameter verwendet werden options
.
Weitere Informationen finden Sie unter Beibehalten des Leerraums beim Laden oder Analysieren von XML und Beibehalten von Leerzeichen beim Serialisieren.