XElement.Save Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Serializa a árvore XML subjacente do elemento. A saída pode ser salva em um arquivo, um XmlTextWriter, um TextWriter ou um XmlWriter. Opcionalmente, a formatação (recuo) pode ser desabilitada.
Sobrecargas
Save(Stream) | |
Save(TextWriter) |
Serialize esse elemento para um TextWriter. |
Save(String) |
Serialize esse elemento em um arquivo. |
Save(XmlWriter) |
Serialize esse elemento em um XmlWriter. |
Save(Stream, SaveOptions) |
Gera esse XElement para o Stream especificado, com a opção de especificar o comportamento de formatação. |
Save(TextWriter, SaveOptions) |
Serializa esse elemento para um TextWriter, opcionalmente desabilitando a formatação. |
Save(String, SaveOptions) |
Serialize esse elemento em um arquivo, opcionalmente, desabilitando a formatação. |
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)
Parâmetros
Comentários
O XML serializado será recuado. Todo o espaço em branco insignificante será removido e o espaço em branco adicional será adicionado para que o XML seja recuado corretamente. O comportamento desse método é que o espaço em branco insignificante não será preservado.
Se você quiser controlar o espaço em branco, use a sobrecarga que Save leva SaveOptions como um parâmetro. Use a opção DisableFormatting para salvar XML não recuado. Isso fará com que o gravador escreva todos os espaços em branco exatamente como representados na árvore XML.
Use a opção OmitDuplicateNamespaces se quiser remover declarações de namespace duplicadas.
Aplica-se a
Save(TextWriter)
Serialize esse elemento para um 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
Um TextWriter no qual o XElement será gravado.
Exemplos
O exemplo a seguir cria um XElement, salva o documento em um StringWritere, em seguida, imprime a cadeia de caracteres no 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
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child> Text </Child>
</Root>
Comentários
O XML serializado será recuado. Todo o espaço em branco insignificante será removido e o espaço em branco adicional será adicionado para que o XML seja recuado corretamente. O comportamento desse método é que o espaço em branco não será preservado.
Se você quiser controlar o espaço em branco, use a sobrecarga que Save permite que você especifique SaveOptions como um parâmetro. Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e preservar o espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(String)
Serialize esse elemento em um arquivo.
public:
void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)
Parâmetros
Exemplos
O exemplo a seguir cria um XElement, salva o documento em um arquivo e imprime o arquivo no 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)
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child>child content</Child>
</Root>
Comentários
O XML serializado será recuado. Todo o espaço em branco insignificante será removido e o espaço em branco adicional será adicionado para que o XML seja recuado corretamente. O comportamento desse método é que nós de espaço em branco insignificantes na árvore XML não serão preservados.
Se você quiser controlar o espaço em branco, use a sobrecarga que Save permite que você especifique SaveOptions como um parâmetro. Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e preservar o espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(XmlWriter)
Serialize esse elemento em um 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)
Parâmetros
Exemplos
O exemplo a seguir mostra como salvar um XElement em um 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())
Esse exemplo gera a saída a seguir:
<Root><Child>child content</Child></Root>
Confira também
Aplica-se 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)
Parâmetros
- options
- SaveOptions
Um objeto SaveOptions que especifica o comportamento de formatação.
Comentários
Por padrão, os options
valores são definidos como None. Essa opção removerá todo o espaço em branco insignificante e adicionará espaço em branco insignificante apropriado para que o XML seja recuado corretamente.
Se você quiser salvar XML não recuado, especifique o DisableFormatting sinalizador para options
. Isso fará com que o gravador escreva todos os espaços em branco exatamente como representados na árvore XML.
Use OmitDuplicateNamespaces a opção se quiser remover declarações de namespace duplicadas.
Aplica-se a
Save(TextWriter, SaveOptions)
Serializa esse elemento para um TextWriter, opcionalmente desabilitando a formatação.
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
O TextWriter para a saída do XML.
- options
- SaveOptions
Um SaveOptions que especifica o comportamento de formatação.
Exemplos
O exemplo a seguir mostra dois usos desse método. O primeiro uso preserva o espaço em branco. O segundo serializa a XElement formatação com. Como o documento não tem espaço em branco como construído, a preservação do espaço em branco gera o XML sem qualquer recuo.
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
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-16"?><Root><Child> Text </Child></Root>
=====
<?xml version="1.0" encoding="utf-16"?>
<Root>
<Child> Text </Child>
</Root>
Comentários
Se você quiser salvar XML não recuado, especifique o DisableFormatting sinalizador para options
. Isso fará com que o gravador escreva todo o espaço em branco exatamente como representado na árvore XML.
Se você quiser salvar XML recuado, não especifique o DisableFormatting sinalizador para options
. Isso removerá todo o espaço em branco insignificante e adicionará espaço em branco insignificante apropriado para que o XML seja recuado corretamente. Esse é o comportamento padrão e o comportamento das sobrecargas dos Save métodos que não tomam options
como parâmetro.
Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e preservar o espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(String, SaveOptions)
Serialize esse elemento em um arquivo, opcionalmente, desabilitando a formatação.
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
- options
- SaveOptions
Um SaveOptions que especifica o comportamento de formatação.
Exemplos
O exemplo a seguir mostra dois usos desse método. O primeiro uso preserva o espaço em branco. O segundo serializa a XElement formatação com.
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)
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-8"?><Root><Child> Text </Child></Root>
=====
<?xml version="1.0" encoding="utf-8"?>
<Root>
<Child> Text </Child>
</Root>
Comentários
Se você quiser salvar XML não recuado, especifique o DisableFormatting sinalizador para options
. Isso fará com que o gravador escreva todo o espaço em branco exatamente como representado na árvore XML.
Se você quiser salvar XML recuado, não especifique o DisableFormatting sinalizador para options
. Isso removerá todo o espaço em branco insignificante e adicionará espaço em branco insignificante apropriado para que o XML seja recuado corretamente. Esse é o comportamento padrão e o comportamento das sobrecargas dos Save métodos que não tomam options
como parâmetro.
Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e preservar o espaço em branco durante a serialização.