XDocument.Save Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Serializuje to XDocument do souboru, a TextWriter, nebo .XmlWriter
Přetížení
Save(XmlWriter) | |
Save(Stream) | |
Save(TextWriter) |
Serializovat to XDocument na TextWriter. |
Save(String) |
Serializujte ho XDocument na soubor a přepíšete existující soubor, pokud existuje. |
Save(Stream, SaveOptions) |
Vypíše toto XDocument do zadaného Stream, volitelně určení chování formátování. |
Save(TextWriter, SaveOptions) |
Serializujte ho XDocument na TextWriter, volitelně zakázání formátování. |
Save(String, SaveOptions) |
Serializujte ho XDocument do souboru, volitelně zakázání formátování. |
Save(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
Příklady
Následující příklad ukazuje, jak uložit na XDocument XmlWriter.
StringBuilder sb = new StringBuilder();
XmlWriterSettings xws = new XmlWriterSettings();
xws.OmitXmlDeclaration = true;
xws.Indent = true;
using (XmlWriter xw = XmlWriter.Create(sb, xws)) {
XDocument doc = new XDocument(
new XElement("Child",
new XElement("GrandChild", "some content")
)
);
doc.Save(xw);
}
Console.WriteLine(sb.ToString());
Dim sb As StringBuilder = New StringBuilder()
Dim xws As XmlWriterSettings = New XmlWriterSettings()
xws.OmitXmlDeclaration = True
xws.Indent = True
Using xw = XmlWriter.Create(sb, xws)
Dim doc As XDocument = New XDocument(<Child><GrandChild>some content</GrandChild></Child>)
doc.Save(xw)
End Using
Console.WriteLine(sb.ToString())
Tento příklad vytvoří následující výstup:
<Child>
<GrandChild>some content</GrandChild>
</Child>
Viz také
Platí pro
Save(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
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)
Serializovat to XDocument 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 XDocument bude napsané.
Příklady
Následující příklad vytvoří XDocument, uloží dokument do StringWritera pak vytiskne řetězec do konzoly.
StringBuilder sb = new StringBuilder();
XDocument doc = new XDocument(
new XElement("Root",
new XElement("Child", "content")
)
);
TextWriter tr = new StringWriter(sb);
doc.Save(tr);
Console.WriteLine(sb.ToString());
Dim sb As StringBuilder = New StringBuilder()
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8"?>
<Root><Child>content</Child></Root>
Dim tr As TextWriter = New StringWriter(sb)
doc.Save(tr)
Console.WriteLine(sb.ToString())
Tento příklad vytvoří následující výstup:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child>content</Child>
</Root>
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. 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)
Serializujte ho XDocument na soubor a přepíšete existující soubor, pokud existuje.
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
Řetězec, který obsahuje název souboru.
Příklady
Následující příklad vytvoří XDocumentsoubor , uloží dokument do souboru a pak soubor vytiskne do konzoly.
XDocument doc = new XDocument(
new XElement("Root",
new XElement("Child", "content")
)
);
doc.Save("Root.xml");
Console.WriteLine(File.ReadAllText("Root.xml"));
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8"?>
<Root><Child>content</Child></Root>
doc.Save("Root.xml")
Console.WriteLine(File.ReadAllText("Root.xml"))
Tento příklad vytvoří následující výstup:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>content</Child>
</Root>
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. 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(Stream, SaveOptions)
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
- options
- SaveOptions
Určuje SaveOptions 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)
Serializujte ho XDocument 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í serializuje XDocument s formátováním. Druhá zachovává prázdné znaky. Vzhledem k tomu, že dokument nemá v něm žádné prázdné znaky, protože při vytváření se zachová prázdné místo, vypíše xml bez odsazení.
XDocument doc = new XDocument(
new XElement("Root",
new XElement("Child", "content")
)
);
StringBuilder sb1 = new StringBuilder();
using (StringWriter sr1 = new StringWriter(sb1)) {
doc.Save(sr1, SaveOptions.None);
Console.WriteLine(sb1.ToString());
}
StringBuilder sb2 = new StringBuilder();
using (StringWriter sr2 = new StringWriter(sb2)) {
doc.Save(sr2, SaveOptions.DisableFormatting);
Console.WriteLine(sb2.ToString());
}
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8"?>
<Root><Child>content</Child></Root>
Dim sb1 As StringBuilder = New StringBuilder()
Using sr1 = New StringWriter(sb1)
doc.Save(sr1, SaveOptions.None)
Console.WriteLine(sb1.ToString())
End Using
Dim sb2 As StringBuilder = New StringBuilder()
Using sr2 = New StringWriter(sb2)
doc.Save(sr2, SaveOptions.DisableFormatting)
Console.WriteLine(sb2.ToString())
End Using
Tento příklad vytvoří následující výstup:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child>content</Child>
</Root>
<?xml version="1.0" encoding="utf-16"?><Root><Child>content</Child></Root>
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)
Serializujte ho XDocument 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
Řetězec, který obsahuje název souboru.
- 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 XDocument odsazení.
XDocument doc = new XDocument(
new XElement("Root",
new XElement("Child", "content")
)
);
doc.Save("Root1.xml", SaveOptions.DisableFormatting);
Console.WriteLine(File.ReadAllText("Root1.xml"));
doc.Save("Root2.xml", SaveOptions.None);
Console.WriteLine(File.ReadAllText("Root2.xml"));
Dim doc As XDocument = _
<?xml version="1.0" encoding="utf-8"?>
<Root><Child>content</Child></Root>
doc.Save("Root1.xml", SaveOptions.DisableFormatting)
Console.WriteLine(File.ReadAllText("Root1.xml"))
doc.Save("Root2.xml", SaveOptions.None)
Console.WriteLine(File.ReadAllText("Root2.xml"))
Tento příklad vytvoří následující výstup:
<?xml version="1.0" encoding="utf-8"?><Root><Child>content</Child></Root>
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>content</Child>
</Root>
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.