XStreamingElement.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.
Serialize este elemento de streaming. 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) |
Gera este XStreamingElement para o Stream especificado. |
Save(TextWriter) |
Serialize este elemento de streaming para um TextWriter. |
Save(String) |
Serialize este elemento de streaming para um arquivo. |
Save(XmlWriter) |
Serialize este elemento de streaming para um XmlWriter. |
Save(Stream, SaveOptions) |
Gera esse XStreamingElement para o Stream especificado, com a opção de especificar o comportamento de formatação. |
Save(TextWriter, SaveOptions) |
Serializar este elemento de streaming para um TextWriter, se desejar desabilitar a formatação. |
Save(String, SaveOptions) |
Serialize este elemento de streaming em um arquivo, se desejar desabilitar a formatação. |
Save(Stream)
Gera este XStreamingElement para o Stream especificado.
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 devidamente recuado. 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 usa SaveOptions como 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 representado na árvore XML.
Use OmitDuplicateNamespaces a opção se quiser remover declarações de namespace duplicadas.
Aplica-se a
Save(TextWriter)
Serialize este elemento de streaming 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 XStreamingElement será gravado.
Exemplos
O exemplo a seguir cria uma árvore XML de origem e cria uma XStreamingElement instância usando uma consulta na árvore XML de origem. Em seguida, ele grava o elemento de streaming em um StringWriter.
XElement srcTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
new XElement("Child", 3),
new XElement("Child", 4),
new XElement("Child", 5)
);
XStreamingElement dstTree = new XStreamingElement("NewRoot",
from el in srcTree.Elements()
where (int)el >= 3
select new XElement("DifferentChild", (int)el)
);
StringBuilder sb = new StringBuilder();
dstTree.Save(new StringWriter(sb));
Console.WriteLine(sb.ToString());
Dim srcTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _
From el In srcTree.Elements() _
Where el.Value >= 3 _
Select <DifferentChild><%= el.Value %></DifferentChild> _
)
Dim sb As StringBuilder = New StringBuilder()
dstTree.Save(New StringWriter(sb))
Console.WriteLine(sb.ToString())
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-16"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
<DifferentChild>4</DifferentChild>
<DifferentChild>5</DifferentChild>
</NewRoot>
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 devidamente recuado. 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 uma das sobrecargas que Save usam SaveOptions como parâmetro. Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e Preservar espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(String)
Serialize este elemento de streaming para 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 uma árvore XML de streaming. Em seguida, serializa a árvore XML de streaming em um arquivo.
XElement srcTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
new XElement("Child", 3),
new XElement("Child", 4),
new XElement("Child", 5)
);
XStreamingElement dstTree = new XStreamingElement("NewRoot",
from el in srcTree.Elements()
where (int)el >= 3
select new XElement("DifferentChild", (int)el)
);
dstTree.Save("Test.xml");
Console.WriteLine(File.ReadAllText("Test.xml"));
Dim srcTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _
From el In srcTree.Elements() _
Where el.Value >= 3 _
Select <DifferentChild><%= el.Value %></DifferentChild> _
)
dstTree.Save("Test.xml")
Console.WriteLine(File.ReadAllText("Test.xml"))
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-8"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
<DifferentChild>4</DifferentChild>
<DifferentChild>5</DifferentChild>
</NewRoot>
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 devidamente recuado. 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 uma das sobrecargas que Save usam SaveOptions como parâmetro. Para obter mais informações, consulte Preservar espaço em branco ao carregar ou analisar XML e Preservar espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(XmlWriter)
Serialize este elemento de streaming para 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 cria um XStreamingElement e grava-o em um XmlWriter.
XElement srcTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
new XElement("Child", 3),
new XElement("Child", 4),
new XElement("Child", 5)
);
StringBuilder sb = new StringBuilder();
XmlWriterSettings xws = new XmlWriterSettings();
xws.OmitXmlDeclaration = true;
using (XmlWriter xw = XmlWriter.Create(sb, xws))
{
XStreamingElement dstTree = new XStreamingElement("NewRoot",
from el in srcTree.Elements()
where (int)el == 5
select new XElement("DifferentChild", (int)el)
);
dstTree.Save(xw);
}
Console.WriteLine(sb.ToString());
Dim srcTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Dim sb As StringBuilder = New StringBuilder()
Dim xws As XmlWriterSettings = New XmlWriterSettings()
xws.OmitXmlDeclaration = True
Using xw As XmlWriter = XmlWriter.Create(sb, xws)
Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _
From el In srcTree.Elements() _
Where el.Value = 5 _
Select <DifferentChild><%= el.Value %></DifferentChild> _
)
dstTree.Save(xw)
End Using
Console.WriteLine(sb.ToString())
Esse exemplo gera a saída a seguir:
<NewRoot><DifferentChild>5</DifferentChild></NewRoot>
Confira também
Aplica-se a
Save(Stream, SaveOptions)
Gera esse XStreamingElement para o Stream especificado, com a opção de especificar o comportamento de formatação.
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, eles options
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 representado na árvore XML.
Use OmitDuplicateNamespaces a opção se quiser remover declarações de namespace duplicadas.
Aplica-se a
Save(TextWriter, SaveOptions)
Serializar este elemento de streaming para um TextWriter, se desejar desabilitar 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 o XStreamingElement com formatação.
XElement srcTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
new XElement("Child", 3),
new XElement("Child", 4),
new XElement("Child", 5)
);
XStreamingElement dstTree = new XStreamingElement("NewRoot",
from el in srcTree.Elements()
where (int)el == 3
select new XElement("DifferentChild", (int)el)
);
StringBuilder sb = new StringBuilder();
dstTree.Save(new StringWriter(sb), SaveOptions.DisableFormatting);
Console.WriteLine(sb.ToString());
Console.WriteLine("------");
sb = new StringBuilder();
dstTree.Save(new StringWriter(sb), SaveOptions.None);
Console.WriteLine(sb.ToString());
Dim srcTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _
From el In srcTree.Elements() _
Where el.Value = 3 _
Select <DifferentChild><%= el.Value %></DifferentChild> _
)
Dim sb As StringBuilder = New StringBuilder()
dstTree.Save(New StringWriter(sb), SaveOptions.DisableFormatting)
Console.WriteLine(sb.ToString())
Console.WriteLine("------")
sb = New StringBuilder()
dstTree.Save(New StringWriter(sb), SaveOptions.None)
Console.WriteLine(sb.ToString())
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-16"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>
------
<?xml version="1.0" encoding="utf-16"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
</NewRoot>
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 espaço em branco durante a serialização.
Confira também
Aplica-se a
Save(String, SaveOptions)
Serialize este elemento de streaming em um arquivo, se desejar desabilitar 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 objeto 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 o XStreamingElement com formatação.
XElement srcTree = new XElement("Root",
new XElement("Child", 1),
new XElement("Child", 2),
new XElement("Child", 3),
new XElement("Child", 4),
new XElement("Child", 5)
);
XStreamingElement dstTree = new XStreamingElement("NewRoot",
from el in srcTree.Elements()
where (int)el == 3
select new XElement("DifferentChild", (int)el)
);
dstTree.Save("Test1.xml", SaveOptions.DisableFormatting);
dstTree.Save("Test2.xml", SaveOptions.None);
Console.WriteLine(File.ReadAllText("Test1.xml"));
Console.WriteLine("------");
Console.WriteLine(File.ReadAllText("Test2.xml"));
Dim srcTree As XElement = _
<Root>
<Child>1</Child>
<Child>2</Child>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Dim dstTree As XStreamingElement = New XStreamingElement("NewRoot", _
From el In srcTree.Elements() _
Where el.Value = 3 _
Select <DifferentChild><%= el.Value %></DifferentChild> _
)
dstTree.Save("Test1.xml", SaveOptions.DisableFormatting)
dstTree.Save("Test2.xml", SaveOptions.None)
Console.WriteLine(File.ReadAllText("Test1.xml"))
Console.WriteLine("------")
Console.WriteLine(File.ReadAllText("Test2.xml"))
Esse exemplo gera a saída a seguir:
<?xml version="1.0" encoding="utf-8"?><NewRoot><DifferentChild>3</DifferentChild></NewRoot>
------
<?xml version="1.0" encoding="utf-8"?>
<NewRoot>
<DifferentChild>3</DifferentChild>
</NewRoot>
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 espaço em branco durante a serialização.