Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo XDocument.Save (TextWriter, SaveOptions)

 

Data di pubblicazione: ottobre 2016

Serializza XDocument per un TextWriter, facoltativamente disabilitando la formattazione.

Spazio dei nomi:   System.Xml.Linq
Assembly:  System.Xml.Linq (in System.Xml.Linq.dll)

public void Save(
	TextWriter textWriter,
	SaveOptions options
)

Parametri

textWriter
Type: System.IO.TextWriter

Oggetto TextWriter nel quale deve essere restituito il codice XML.

options
Type: System.Xml.Linq.SaveOptions

Oggetto SaveOptions che specifica il comportamento di formattazione.

Se si desidera salvare il codice XML, specificare il DisableFormatting flag per options. In questo modo il writer scriverà tutti gli spazi vuoti, esattamente come rappresentato nella struttura ad albero XML.

Se si desidera salvare il codice XML rientrato, non specificare il DisableFormatting flag per options. Verrà rimuovere tutto lo spazio vuoto non significativo estraneo e aggiungere spazio vuoto non significativo appropriato in modo che il codice XML rientrato correttamente. Si tratta del comportamento predefinito e il comportamento degli overload di Save metodi che non accettano options come parametro.

Per altre informazioni, vedere Conservando lo spazio vuoto durante il caricamento o l'analisi XML3 e Conservando lo spazio vuoto durante la Serializing1.

Nell'esempio seguente vengono illustrati due utilizzi di questo metodo. Il primo serializza il XDocument con la formattazione. Il secondo mantiene gli spazi vuoti. Poiché il documento non ha spazi come costruito, mantenimento dello spazio vuoto restituisce il codice XML senza alcun rientro.


                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());
}

Questo esempio produce il seguente output:


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

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 3.5
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: