Partage via


XElement.Save Méthode

Définition

Sérialisez l'arborescence XML sous-jacente de cet élément. La sortie peut être enregistrée vers un fichier, un XmlTextWriter, un TextWriter ou un XmlWriter. Éventuellement, la mise en forme (mise en retrait) peut être désactivée.

Surcharges

Save(Stream)

Renvoie ce XElement vers le Stream spécifié.

Save(TextWriter)

Sérialisez cet élément vers un TextWriter.

Save(String)

Sérialisez cet élément dans un fichier.

Save(XmlWriter)

Sérialisez cet élément vers un XmlWriter.

Save(Stream, SaveOptions)

Génère ce XElement vers le Stream spécifié, en précisant le cas échéant le comportement de mise en forme.

Save(TextWriter, SaveOptions)

Sérialisez cet élément vers un TextWriter, en désactivant éventuellement la mise en forme.

Save(String, SaveOptions)

Sérialisez cet élément dans un fichier, en désactivant éventuellement la mise en forme.

Save(Stream)

Renvoie ce XElement vers le Stream spécifié.

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)

Paramètres

stream
Stream

Flux vers lequel générer ce XElement.

Remarques

Le code XML sérialisé sera mis en retrait. Tous les espaces blancs non significatifs seront supprimés et des espaces blancs supplémentaires seront ajoutés afin que le code XML soit correctement mis en retrait. Le comportement de cette méthode est que l’espace blanc non significatif ne sera pas conservé.

Si vous souhaitez contrôler l’espace blanc, utilisez la surcharge qui Save prend SaveOptions comme paramètre. Utilisez l’option permettant d’enregistrer DisableFormatting du code XML unindenté. Cela entraîne l’écriture de tous les espaces blancs exactement comme représenté dans l’arborescence XML.

Utilisez l’option OmitDuplicateNamespaces si vous souhaitez supprimer les déclarations d’espace de noms en double.

S’applique à

Save(TextWriter)

Sérialisez cet élément vers 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)

Paramètres

textWriter
TextWriter

TextWriter dans lequel le XElement sera écrit.

Exemples

L’exemple suivant crée un XElementdocument , enregistre le document dans un StringWriter, puis imprime la chaîne dans la 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  

Cet exemple produit la sortie suivante :

<?xml version="1.0" encoding="utf-16"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

Remarques

Le code XML sérialisé sera mis en retrait. Tous les espaces blancs non significatifs seront supprimés et des espaces blancs supplémentaires seront ajoutés afin que le code XML soit correctement mis en retrait. Le comportement de cette méthode est que l’espace blanc ne sera pas conservé.

Si vous souhaitez contrôler l’espace blanc, utilisez la surcharge qui vous permet de Save spécifier SaveOptions en tant que paramètre. Pour plus d’informations, consultez Conserver l’espace blanc lors du chargement ou de l’analyse de XML et conserver des espaces blancs lors de la sérialisation.

Voir aussi

S’applique à

Save(String)

Sérialisez cet élément dans un fichier.

public:
 void Save(System::String ^ fileName);
public void Save (string fileName);
member this.Save : string -> unit
Public Sub Save (fileName As String)

Paramètres

fileName
String

String qui contient le nom du fichier.

Exemples

L’exemple suivant crée un XElementdocument , enregistre le document dans un fichier, puis imprime le fichier dans la 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)  

Cet exemple produit la sortie suivante :

<?xml version="1.0" encoding="utf-8"?>  
<Root>  
  <Child>child content</Child>  
</Root>  

Remarques

Le code XML sérialisé sera mis en retrait. Tous les espaces blancs non significatifs seront supprimés et des espaces blancs supplémentaires seront ajoutés afin que le code XML soit correctement mis en retrait. Le comportement de cette méthode est que les nœuds d’espace blanc non significatifs dans l’arborescence XML ne seront pas conservés.

Si vous souhaitez contrôler l’espace blanc, utilisez la surcharge qui vous permet de Save spécifier SaveOptions en tant que paramètre. Pour plus d’informations, consultez Conserver l’espace blanc lors du chargement ou de l’analyse de XML et conserver des espaces blancs lors de la sérialisation.

Voir aussi

S’applique à

Save(XmlWriter)

Sérialisez cet élément vers un 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)

Paramètres

writer
XmlWriter

XmlWriter dans lequel le XElement sera écrit.

Exemples

L'exemple suivant montre comment enregistrer un objet XElement dans un objet 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())  

Cet exemple produit la sortie suivante :

<Root><Child>child content</Child></Root>  

Voir aussi

S’applique à

Save(Stream, SaveOptions)

Génère ce XElement vers le Stream spécifié, en précisant le cas échéant le comportement de mise en forme.

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)

Paramètres

stream
Stream

Flux vers lequel générer ce XElement.

options
SaveOptions

Objet SaveOptions qui spécifie le comportement de mise en forme.

Remarques

Par défaut, la options valeur Noneest définie sur . Cette option supprime tous les espaces blancs non significatifs extranes et ajoute un espace blanc non significatif approprié afin que le code XML soit correctement mis en retrait.

Si vous souhaitez enregistrer le code XML unindenté, spécifiez l’indicateur DisableFormatting pour options. Cela entraîne l’écriture de tous les espaces blancs exactement comme représenté dans l’arborescence XML.

Utilisez OmitDuplicateNamespaces l’option si vous souhaitez supprimer les déclarations d’espace de noms en double.

S’applique à

Save(TextWriter, SaveOptions)

Sérialisez cet élément vers un TextWriter, en désactivant éventuellement la mise en forme.

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)

Paramètres

textWriter
TextWriter

TextWriter vers lequel exporter le code XML.

options
SaveOptions

SaveOptions qui spécifie le comportement de mise en forme.

Exemples

L’exemple suivant montre deux utilisations de cette méthode. La première utilisation conserve l’espace blanc. La deuxième sérialise avec XElement la mise en forme. Étant donné que le document n’a pas d’espace blanc dans celui-ci comme construit, la conservation de l’espace blanc génère le CODE XML sans retrait.

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  

Cet exemple produit la sortie suivante :

<?xml version="1.0" encoding="utf-16"?><Root><Child> Text </Child></Root>  
=====  
<?xml version="1.0" encoding="utf-16"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

Remarques

Si vous souhaitez enregistrer le code XML unindenté, spécifiez l’indicateur DisableFormatting pour options. Cela entraîne l’écriture de tous les espaces blancs exactement comme représenté dans l’arborescence XML.

Si vous souhaitez enregistrer le code XML mis en retrait, ne spécifiez pas l’indicateur DisableFormatting pour options. Cela supprime tous les espaces blancs non significatifs extranes et ajoute un espace blanc non significatif approprié afin que le code XML soit correctement mis en retrait. Il s’agit du comportement par défaut et du comportement des surcharges des Save méthodes qui ne prennent options pas en tant que paramètre.

Pour plus d’informations, consultez Conserver l’espace blanc lors du chargement ou de l’analyse du code XML et conserver l’espace blanc lors de la sérialisation.

Voir aussi

S’applique à

Save(String, SaveOptions)

Sérialisez cet élément dans un fichier, en désactivant éventuellement la mise en forme.

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)

Paramètres

fileName
String

String qui contient le nom du fichier.

options
SaveOptions

SaveOptions qui spécifie le comportement de mise en forme.

Exemples

L’exemple suivant montre deux utilisations de cette méthode. La première utilisation conserve l’espace blanc. La deuxième sérialise la XElement mise en forme.

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)  

Cet exemple produit la sortie suivante :

<?xml version="1.0" encoding="utf-8"?><Root><Child> Text </Child></Root>  
=====  
<?xml version="1.0" encoding="utf-8"?>  
<Root>  
  <Child> Text </Child>  
</Root>  

Remarques

Si vous souhaitez enregistrer le code XML unindenté, spécifiez l’indicateur DisableFormatting pour options. Cela entraîne l’écriture de tous les espaces blancs exactement comme représenté dans l’arborescence XML.

Si vous souhaitez enregistrer le code XML mis en retrait, ne spécifiez pas l’indicateur DisableFormatting pour options. Cela supprime tous les espaces blancs non significatifs extranes et ajoute un espace blanc non significatif approprié afin que le code XML soit correctement mis en retrait. Il s’agit du comportement par défaut et du comportement des surcharges des Save méthodes qui ne prennent options pas en tant que paramètre.

Pour plus d’informations, consultez Conserver l’espace blanc lors du chargement ou de l’analyse du code XML et conserver l’espace blanc lors de la sérialisation.

Voir aussi

S’applique à