XDocument.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'oggetto XDocument in un file, in un TextWriteroggetto o in un oggetto XmlWriter.
Overload
| Nome | Descrizione |
|---|---|
| Save(XmlWriter) | |
| Save(Stream) |
Restituisce l'oggetto XDocument all'oggetto specificato Stream. |
| Save(TextWriter) |
Serializzarlo XDocument in un oggetto TextWriter. |
| Save(String) |
Serializzarlo XDocument in un file, sovrascrivendo un file esistente, se esistente. |
| Save(Stream, SaveOptions) |
Restituisce questo valore XDocument all'oggetto specificato Stream, specificando facoltativamente il comportamento di formattazione. |
| Save(TextWriter, SaveOptions) |
Serializzarlo XDocument in un TextWriteroggetto , disabilitando facoltativamente la formattazione. |
| Save(String, SaveOptions) |
Serializzarlo XDocument in un file, disabilitando facoltativamente la formattazione. |
Save(XmlWriter)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
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 un oggetto XDocument in un oggetto 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())
In questo esempio viene generato l'output seguente:
<Child>
<GrandChild>some content</GrandChild>
</Child>
Vedi anche
- WriteTo(XmlWriter)
- Load
- Parse
- Panoramica di LINQ to XML
- Come leggere e scrivere un documento codificato
Si applica a
Save(Stream)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
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 di spazio dei nomi duplicate.
Si applica a
Save(TextWriter)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Serializzarlo XDocument in un oggetto 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 XDocument .
Esempio
L'esempio seguente crea un XDocumentoggetto , salva il documento in un StringWriteroggetto e quindi stampa la stringa nella console.
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())
In questo esempio viene generato l'output seguente:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<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 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. 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
- WriteTo(XmlWriter)
- Load
- Parse
- Panoramica di LINQ to XML
- Come leggere e scrivere un documento codificato
Si applica a
Save(String)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Serializzarlo XDocument in un file, sovrascrivendo un file esistente, se esistente.
public:
void Save(System::String ^ fileName);
public void Save(string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)
Parametri
- fileName
- String
Stringa contenente il nome del file.
Esempio
L'esempio seguente crea un XDocumentoggetto , salva il documento in un file e quindi stampa il file nella console.
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"))
In questo esempio viene generato l'output seguente:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<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 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. 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
- WriteTo(XmlWriter)
- Load
- Parse
- Panoramica di LINQ to XML
- Come leggere e scrivere un documento codificato
Si applica a
Save(Stream, SaveOptions)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
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 di formattazione.
Commenti
Per impostazione predefinita, options sono impostate su None. Questa opzione rimuoverà tutti gli spazi vuoti superflui e aggiungerà spazi vuoti significativi appropriati in modo che il codice XML sia rientrato correttamente.
Se si desidera salvare 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)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Serializzarlo XDocument in un TextWriteroggetto , disabilitando facoltativamente 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 in cui restituire 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 serializza l'oggetto XDocument con la formattazione. Il secondo mantiene lo spazio vuoto. Poiché il documento non contiene spazi vuoti come costruito, conservando lo spazio vuoto viene restituito 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());
}
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
In questo esempio viene generato l'output seguente:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child>content</Child>
</Root>
<?xml version="1.0" encoding="utf-16"?><Root><Child>content</Child></Root>
Commenti
Se si desidera salvare 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 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
- WriteTo(XmlWriter)
- Load
- Parse
- Panoramica di LINQ to XML
- Come leggere e scrivere un documento codificato
Si applica a
Save(String, SaveOptions)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Serializzarlo XDocument in un file, disabilitando facoltativamente 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
- fileName
- String
Stringa contenente il nome del file.
- 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 il XDocument rientro.
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"))
In questo esempio viene generato l'output seguente:
<?xml version="1.0" encoding="utf-8"?><Root><Child>content</Child></Root>
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>content</Child>
</Root>
Commenti
Se si desidera salvare 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 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
- WriteTo(XmlWriter)
- Load
- Parse
- Panoramica di LINQ to XML
- Procedura: Leggere e scrivere un documento codificato