XDocument.Save Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Serializa este XDocument en un archivo, un TextWritero un XmlWriter.
Sobrecargas
Save(XmlWriter) | |
Save(Stream) | |
Save(TextWriter) |
Serialice este XDocument en un TextWriter. |
Save(String) |
Serialice este XDocument en un archivo, sobrescribiendo un archivo existente, si existe. |
Save(Stream, SaveOptions) |
Genera este XDocument al Streamespecificado, especificando opcionalmente el comportamiento de formato. |
Save(TextWriter, SaveOptions) |
Serialice este XDocument en un TextWriter, deshabilitando opcionalmente el formato. |
Save(String, SaveOptions) |
Serialice este XDocument en un archivo, deshabilitando opcionalmente el formato. |
Save(XmlWriter)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- 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)
Parámetros
Ejemplos
En el ejemplo siguiente se muestra cómo guardar un XDocument en un 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())
En este ejemplo se genera la siguiente salida:
<Child>
<GrandChild>some content</GrandChild>
</Child>
Consulte también
- WriteTo(XmlWriter)
- Load
- Parse
- información general de LINQ to XML
- Cómo leer y escribir un documento codificado
Se aplica a
Save(Stream)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- 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)
Parámetros
Comentarios
El XML serializado se aplicará sangría. Se quitarán todos los espacios en blanco insignificantes y se agregarán espacios en blanco adicionales para que el XML se desendene correctamente. El comportamiento de este método es que no se conservarán espacios en blanco insignificantes.
Si desea controlar el espacio en blanco, use la sobrecarga de Save que toma SaveOptions como parámetro. Use la opción DisableFormatting para guardar XML sin sangría. Esto hará que el escritor escriba todos los espacios en blanco exactamente como se representan en el árbol XML.
Use OmitDuplicateNamespaces opción si desea quitar declaraciones de espacio de nombres duplicadas.
Se aplica a
Save(TextWriter)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- XDocument.cs
Serialice este XDocument en un 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)
Parámetros
- textWriter
- TextWriter
Un TextWriter en el que se escribirá el XDocument.
Ejemplos
En el ejemplo siguiente se crea un XDocument, se guarda el documento en un StringWritery, a continuación, se imprime la cadena en la consola.
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())
En este ejemplo se genera la siguiente salida:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child>content</Child>
</Root>
Comentarios
El XML serializado se aplicará sangría. Se quitarán todos los espacios en blanco insignificantes y se agregarán espacios en blanco adicionales para que el XML se desendene correctamente. El comportamiento de este método es que no se conservarán espacios en blanco insignificantes.
Si desea controlar el espacio en blanco, use la sobrecarga de Save que toma SaveOptions como parámetro. Para obtener más información, vea Conservar espacio en blanco al cargar o analizar XML y Conservar espacio en blanco al serializar.
Consulte también
- WriteTo(XmlWriter)
- Load
- Parse
- información general de LINQ to XML
- Cómo leer y escribir un documento codificado
Se aplica a
Save(String)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- XDocument.cs
Serialice este XDocument en un archivo, sobrescribiendo un archivo existente, si existe.
public:
void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)
Parámetros
- fileName
- String
Cadena que contiene el nombre del archivo.
Ejemplos
En el ejemplo siguiente se crea un XDocument, se guarda el documento en un archivo y, a continuación, se imprime el archivo en la consola.
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"))
En este ejemplo se genera la siguiente salida:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>content</Child>
</Root>
Comentarios
El XML serializado se aplicará sangría. Se quitarán todos los espacios en blanco insignificantes y se agregarán espacios en blanco adicionales para que el XML se desendene correctamente. El comportamiento de este método es que no se conservarán espacios en blanco insignificantes.
Si desea controlar el espacio en blanco, use la sobrecarga de Save que toma SaveOptions como parámetro. Para obtener más información, vea Conservar espacio en blanco al cargar o analizar XML y Conservar espacio en blanco al serializar.
Consulte también
- WriteTo(XmlWriter)
- Load
- Parse
- información general de LINQ to XML
- Cómo leer y escribir un documento codificado
Se aplica a
Save(Stream, SaveOptions)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- 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)
Parámetros
- options
- SaveOptions
Un SaveOptions que especifica el comportamiento de formato.
Comentarios
De forma predeterminada, el options
se establece en None. Esta opción quitará todos los espacios en blanco insignificantes extraños y agregará espacios en blanco insignificantes adecuados para que el XML esté correctamente sangrado.
Si desea guardar XML sin sangr, especifique la marca de DisableFormatting para options
. Esto hará que el escritor escriba todos los espacios en blanco exactamente como se representan en el árbol XML.
Use OmitDuplicateNamespaces opción si desea quitar declaraciones de espacio de nombres duplicadas.
Se aplica a
Save(TextWriter, SaveOptions)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- XDocument.cs
Serialice este XDocument en un TextWriter, deshabilitando opcionalmente el formato.
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)
Parámetros
- textWriter
- TextWriter
La TextWriter en la que se va a generar el XML.
- options
- SaveOptions
Un SaveOptions que especifica el comportamiento de formato.
Ejemplos
En el ejemplo siguiente se muestran dos usos de este método. El primer uso serializa el XDocument con formato. El segundo conserva el espacio en blanco. Dado que el documento no tiene ningún espacio en blanco tal como se construye, conservando el espacio en blanco genera el XML sin sangría.
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
En este ejemplo se genera la siguiente salida:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child>content</Child>
</Root>
<?xml version="1.0" encoding="utf-16"?><Root><Child>content</Child></Root>
Comentarios
Si desea guardar XML sin sangr, especifique la marca de DisableFormatting para options
. Esto hará que el escritor escriba todo el espacio en blanco exactamente como se representa en el árbol XML.
Si desea guardar XML con sangría, no especifique la marca DisableFormatting para options
. Esto eliminará todos los espacios en blanco insignificantes extraños y agregará espacios en blanco insignificantes apropiados para que el XML esté correctamente sangrado. Este es el comportamiento predeterminado y el comportamiento de las sobrecargas de los métodos de Save que no toman options
como parámetro.
Para obtener más información, vea Conservar espacio en blanco al cargar o analizar XML y Conservar espacio en blanco al serializar.
Consulte también
- WriteTo(XmlWriter)
- Load
- Parse
- información general de LINQ to XML
- Cómo leer y escribir un documento codificado
Se aplica a
Save(String, SaveOptions)
- Source:
- XDocument.cs
- Source:
- XDocument.cs
- Source:
- XDocument.cs
Serialice este XDocument en un archivo, deshabilitando opcionalmente el formato.
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)
Parámetros
- fileName
- String
Cadena que contiene el nombre del archivo.
- options
- SaveOptions
Un SaveOptions que especifica el comportamiento de formato.
Ejemplos
En el ejemplo siguiente se muestran dos usos de este método. El primer uso conserva el espacio en blanco. La segunda serializa el XDocument con sangría.
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"))
En este ejemplo se genera la siguiente salida:
<?xml version="1.0" encoding="utf-8"?><Root><Child>content</Child></Root>
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>content</Child>
</Root>
Comentarios
Si desea guardar XML sin sangr, especifique la marca de DisableFormatting para options
. Esto hará que el escritor escriba todo el espacio en blanco exactamente como se representa en el árbol XML.
Si desea guardar XML con sangría, no especifique la marca DisableFormatting para options
. Esto eliminará todos los espacios en blanco insignificantes extraños y agregará espacios en blanco insignificantes apropiados para que el XML esté correctamente sangrado. Este es el comportamiento predeterminado y el comportamiento de las sobrecargas de los métodos de Save que no toman options
como parámetro.
Para obtener más información, vea Conservar espacio en blanco al cargar o analizar XML y Conservar espacio en blanco al serializar.
Consulte también
- WriteTo(XmlWriter)
- Load
- Parse
- información general de LINQ to XML
- Cómo: Leer y escribir un documento codificado