XElement.Save Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Serializza l'albero XML sottostante dell'elemento. L'output può essere salvato in un file oppure in un oggetto XmlTextWriter, TextWriter o XmlWriter. Facoltativamente, è possibile disabilitare la formattazione (rientro).
Overload
Save(Stream) |
Restituisce l'oggetto XElement nell'oggetto Stream specificato. |
Save(TextWriter) |
Serializza questo elemento in TextWriter. |
Save(String) |
Serializza questo elemento in un file. |
Save(XmlWriter) |
Serializza questo elemento in XmlWriter. |
Save(Stream, SaveOptions) |
Restituisce l'oggetto XElement nell'oggetto Stream specificato, indicando facoltativamente il comportamento di formattazione. |
Save(TextWriter, SaveOptions) |
Serializza questo elemento in TextWriter, facoltativamente disabilitando la formattazione. |
Save(String, SaveOptions) |
Serializza questo elemento in un file, facoltativamente disabilitando la formattazione. |
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)
Parametri
Commenti
Il codice XML serializzato verrà rientrato. Tutti gli spazi vuoti non significativi verranno rimossi e verranno aggiunti spazi vuoti aggiuntivi in modo che il codice XML venga rientrato correttamente. Il comportamento di questo metodo è che gli spazi vuoti non significativi non verranno mantenuti.
Se si desidera controllare lo spazio vuoto, usare l'overload di Save che accetta SaveOptions come parametro. Usare l'opzione DisableFormatting per salvare il codice XML non rientrato. In questo modo il writer scriverà tutti gli spazi vuoti esattamente come rappresentati nell'albero XML.
Usare l'opzione OmitDuplicateNamespaces se si desidera rimuovere dichiarazioni dello spazio dei nomi duplicate.
Si applica a
Save(TextWriter)
Serializza questo elemento in 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)
Parametri
- textWriter
- TextWriter
Oggetto TextWriter in cui verrà scritto l'oggetto XElement.
Esempio
L'esempio seguente crea un XElementoggetto , salva il documento in un oggetto StringWritere quindi stampa la stringa nella 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
Nell'esempio viene prodotto l'output seguente:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child> Text </Child>
</Root>
Commenti
Il codice XML serializzato verrà rientrato. Tutti gli spazi vuoti non significativi verranno rimossi e verranno aggiunti spazi vuoti aggiuntivi in modo che il codice XML venga rientrato correttamente. Il comportamento di questo metodo è che gli spazi vuoti non verranno mantenuti.
Se si desidera controllare lo spazio vuoto, usare l'overload di Save che consente di specificare SaveOptions come parametro. Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e Mantenere lo spazio vuoto durante la serializzazione.
Vedi anche
Si applica a
Save(String)
Serializza questo elemento in un file.
public:
void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)
Parametri
Esempio
L'esempio seguente crea un XElementoggetto , salva il documento in un file e quindi stampa il file nella 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)
Nell'esempio viene prodotto l'output seguente:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>child content</Child>
</Root>
Commenti
Il codice XML serializzato verrà rientrato. Tutti gli spazi vuoti non significativi verranno rimossi e verranno aggiunti spazi vuoti aggiuntivi in modo che il codice XML venga rientrato correttamente. Il comportamento di questo metodo è che i nodi di spazio vuoto non significativi nell'albero XML non verranno mantenuti.
Se si desidera controllare lo spazio vuoto, usare l'overload di Save che consente di specificare SaveOptions come parametro. Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e Mantenere lo spazio vuoto durante la serializzazione.
Vedi anche
Si applica a
Save(XmlWriter)
Serializza questo elemento in 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)
Parametri
Esempio
Nell'esempio seguente viene illustrato come salvare XElement in 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())
Nell'esempio viene prodotto l'output seguente:
<Root><Child>child content</Child></Root>
Vedi anche
Si applica a
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)
Parametri
- options
- SaveOptions
Oggetto SaveOptions che specifica il comportamento della formattazione.
Commenti
Per impostazione predefinita, l'oggetto options
è impostato su None. Questa opzione rimuoverà tutti gli spazi vuoti non significativi e aggiungerà spazi vuoti insignificanti appropriati in modo che il codice XML sia rientrato correttamente.
Se si desidera salvare il codice XML non rientrato, specificare il DisableFormatting flag per options
. In questo modo il writer scriverà tutti gli spazi vuoti esattamente come rappresentati nell'albero XML.
Usare l'opzione OmitDuplicateNamespaces se si desidera rimuovere dichiarazioni di spazio dei nomi duplicate.
Si applica a
Save(TextWriter, SaveOptions)
Serializza questo elemento in TextWriter, facoltativamente disabilitando la formattazione.
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)
Parametri
- textWriter
- TextWriter
Oggetto TextWriter nel quale deve essere restituito il codice XML.
- options
- SaveOptions
Oggetto SaveOptions che specifica il comportamento di formattazione.
Esempio
Nell'esempio seguente vengono illustrati due usi di questo metodo. Il primo utilizzo mantiene lo spazio vuoto. Il secondo serializza con la XElement formattazione. Poiché il documento non contiene spazi vuoti come costruito, mantiene lo spazio vuoto restituisce il codice XML senza rientro.
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
Nell'esempio viene prodotto l'output seguente:
<?xml version="1.0" encoding="utf-16"?><Root><Child> Text </Child></Root>
=====
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child> Text </Child>
</Root>
Commenti
Se si desidera salvare il codice XML non rientrato, specificare il DisableFormatting flag per options
. In questo modo il writer scriverà tutti gli spazi vuoti esattamente come rappresentati nell'albero XML.
Se si desidera salvare il codice XML con rientro, non specificare il DisableFormatting flag per options
. In questo modo verranno rimossi tutti gli spazi vuoti superflui estranei e si aggiungeranno spazi vuoti non significativi appropriati in modo che il codice XML sia rientrato correttamente. Si tratta del comportamento predefinito e del comportamento degli overload dei Save metodi che non accettano options
come parametro.
Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e Mantenere lo spazio vuoto durante la serializzazione.
Vedi anche
Si applica a
Save(String, SaveOptions)
Serializza questo elemento in un file, facoltativamente disabilitando la formattazione.
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)
Parametri
- options
- SaveOptions
Oggetto SaveOptions che specifica il comportamento di formattazione.
Esempio
Nell'esempio seguente vengono illustrati due usi di questo metodo. Il primo utilizzo mantiene lo spazio vuoto. Il secondo serializza l'oggetto con la XElement formattazione.
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)
Nell'esempio viene prodotto l'output seguente:
<?xml version="1.0" encoding="utf-8"?><Root><Child> Text </Child></Root>
=====
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child> Text </Child>
</Root>
Commenti
Se si desidera salvare il codice XML non rientrato, specificare il DisableFormatting flag per options
. In questo modo il writer scriverà tutti gli spazi vuoti esattamente come rappresentati nell'albero XML.
Se si desidera salvare il codice XML con rientro, non specificare il DisableFormatting flag per options
. In questo modo verranno rimossi tutti gli spazi vuoti superflui estranei e si aggiungeranno spazi vuoti non significativi appropriati in modo che il codice XML sia rientrato correttamente. Si tratta del comportamento predefinito e del comportamento degli overload dei Save metodi che non accettano options
come parametro.
Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e Mantenere lo spazio vuoto durante la serializzazione.