XmlWriter.WriteStartElement Méthode

Définition

En cas de substitution dans une classe dérivée, écrit la balise de début spécifiée.When overridden in a derived class, writes the specified start tag.

Surcharges

WriteStartElement(String)

En cas de substitution dans une classe dérivée, écrit une balise de début avec le nom local spécifié.When overridden in a derived class, writes out a start tag with the specified local name.

WriteStartElement(String, String)

En cas de substitution dans une classe dérivée, écrit l’étiquette de début spécifiée et l’associe à l’espace de noms indiqué.When overridden in a derived class, writes the specified start tag and associates it with the given namespace.

WriteStartElement(String, String, String)

En cas de substitution dans une classe dérivée, écrit l’étiquette de début spécifiée, puis l’associe à l’espace de noms et au préfixe indiqués.When overridden in a derived class, writes the specified start tag and associates it with the given namespace and prefix.

Remarques

Pour obtenir la version asynchrone de cette méthode, consultez WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String)

En cas de substitution dans une classe dérivée, écrit une balise de début avec le nom local spécifié.When overridden in a derived class, writes out a start tag with the specified local name.

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

Paramètres

localName
String

Le nom local de l'élément.The local name of the element.

Exceptions

Le writer est fermé.The writer is closed.

- ou --or-

Une méthode XmlWriter a été appelée avant la fin d’une opération asynchrone précédente.An XmlWriter method was called before a previous asynchronous operation finished. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Un caractère dans la mémoire tampon est un caractère XML valide mais n'est pas valide pour l'encodage de sortie.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Par exemple, si l'encodage de sortie est ASCII, vous devez utiliser uniquement des caractères de la plage de 0 à 127 pour les noms d'éléments et d'attributs.For example, if the output encoding is ASCII, you should only use characters from the range of 0 to 127 for element and attribute names. Le caractère non valide peut être dans l'argument de cette méthode ou dans un argument des méthodes précédentes qui écrivaient dans la mémoire tampon.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Les caractères de ce type sont échappés par les références d'entité de caractère lorsque cela est possible (par exemple, dans les nœuds de texte ou les valeurs d'attribut).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Toutefois, la référence d'entité de caractère n'est pas autorisée dans les noms d'éléments et d'attributs, les commentaires, les instructions de traitement ou les sections CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Exemples

L’exemple suivant écrit un nœud XML.The following example writes an XML node.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   
   // Create a writer to write XML to the console.
   XmlWriterSettings^ settings = gcnew XmlWriterSettings;
   settings->Indent = true;
   settings->OmitXmlDeclaration = true;
   XmlWriter^ writer = XmlWriter::Create( Console::Out, settings );
   
   // Write the book element.
   writer->WriteStartElement( L"book" );
   
   // Write the title element.
   writer->WriteStartElement( L"title" );
   writer->WriteString( L"Pride And Prejudice" );
   writer->WriteEndElement();
   
   // Write the close tag for the root element.
   writer->WriteEndElement();
   
   // Write the XML and close the writer.
   writer->Close();
   return 1;
}

using System;
using System.IO;
using System.Xml;

public class Sample {

  public static void Main() {

     // Create a writer to write XML to the console.
     XmlWriterSettings settings = new XmlWriterSettings();
     settings.Indent = true;
     settings.OmitXmlDeclaration = true;
     XmlWriter writer = XmlWriter.Create(Console.Out, settings);

     // Write the book element.
     writer.WriteStartElement("book");

     // Write the title element.
     writer.WriteStartElement("title");
     writer.WriteString("Pride And Prejudice");
     writer.WriteEndElement();

     // Write the close tag for the root element.
     writer.WriteEndElement();

     // Write the XML and close the writer.
     writer.Close();
  }
}
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    
  Public Shared Sub Main()

     ' Create a writer to write XML to the console.
     Dim settings As XmlWriterSettings = new XmlWriterSettings()
     settings.Indent = true
     settings.OmitXmlDeclaration = true
     Dim writer As XmlWriter = XmlWriter.Create(Console.Out, settings)

     ' Write the book element.
     writer.WriteStartElement("book")
        
     ' Write the title element.
     writer.WriteStartElement("title")
     writer.WriteString("Pride And Prejudice")
     writer.WriteEndElement()
        
     ' Write the close tag for the root element.
     writer.WriteEndElement()
        
     ' Write the XML and close the writer.
     writer.Close()

  End Sub
End Class

Remarques

Pour obtenir la version asynchrone de cette méthode, consultez WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String, String)

En cas de substitution dans une classe dérivée, écrit l’étiquette de début spécifiée et l’associe à l’espace de noms indiqué.When overridden in a derived class, writes the specified start tag and associates it with the given namespace.

public:
 void WriteStartElement(System::String ^ localName, System::String ^ ns);
public void WriteStartElement (string localName, string ns);
public void WriteStartElement (string localName, string? ns);
member this.WriteStartElement : string * string -> unit
Public Sub WriteStartElement (localName As String, ns As String)

Paramètres

localName
String

Le nom local de l'élément.The local name of the element.

ns
String

URI de l'espace de noms à associer à l'élément.The namespace URI to associate with the element. Si cet espace de noms est déjà dans la portée et qu'il possède un préfixe associé, le writer écrit automatiquement ce préfixe également.If this namespace is already in scope and has an associated prefix, the writer automatically writes that prefix also.

Exceptions

Le writer est fermé.The writer is closed.

- ou --or-

Une méthode XmlWriter a été appelée avant la fin d’une opération asynchrone précédente.An XmlWriter method was called before a previous asynchronous operation finished. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Un caractère dans la mémoire tampon est un caractère XML valide mais n'est pas valide pour l'encodage de sortie.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Par exemple, si l'encodage de sortie est ASCII, vous devez utiliser uniquement des caractères de la plage de 0 à 127 pour les noms d'éléments et d'attributs.For example, if the output encoding is ASCII, you should only use characters from the range of 0 to 127 for element and attribute names. Le caractère non valide peut être dans l'argument de cette méthode ou dans un argument des méthodes précédentes qui écrivaient dans la mémoire tampon.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Les caractères de ce type sont échappés par les références d'entité de caractère lorsque cela est possible (par exemple, dans les nœuds de texte ou les valeurs d'attribut).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Toutefois, la référence d'entité de caractère n'est pas autorisée dans les noms d'éléments et d'attributs, les commentaires, les instructions de traitement ou les sections CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Remarques

Après avoir appelé cette méthode, vous pouvez soit écrire des attributs, soit créer du contenu à l’aide WriteComment WriteString WriteStartElement de, de ou pour des éléments enfants.After calling this method you can either write attributes, or create content using WriteComment, WriteString, or WriteStartElement for child elements. Vous pouvez fermer l’élément avec WriteEndElement ou WriteFullEndElement .You can close the element with either WriteEndElement or WriteFullEndElement. Par exemple, le code C# suivant :For example, the following C# code:

writer.WriteStartElement("item",null);  
writer.WriteString("some text");  
writer.WriteEndElement();  

Génère la sortie suivante :Generates the following output:

<item>some text</item>  

Pour obtenir la version asynchrone de cette méthode, consultez WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String, String, String)

En cas de substitution dans une classe dérivée, écrit l’étiquette de début spécifiée, puis l’associe à l’espace de noms et au préfixe indiqués.When overridden in a derived class, writes the specified start tag and associates it with the given namespace and prefix.

public:
 abstract void WriteStartElement(System::String ^ prefix, System::String ^ localName, System::String ^ ns);
public abstract void WriteStartElement (string prefix, string localName, string ns);
public abstract void WriteStartElement (string prefix, string? localName, string ns);
abstract member WriteStartElement : string * string * string -> unit
Public MustOverride Sub WriteStartElement (prefix As String, localName As String, ns As String)

Paramètres

prefix
String

Préfixe d'espace de noms de cet élément.The namespace prefix of the element.

localName
String

Le nom local de l'élément.The local name of the element.

ns
String

URI de l'espace de noms à associer à l'élément.The namespace URI to associate with the element.

Exceptions

Le writer est fermé.The writer is closed.

- ou --or-

Une méthode XmlWriter a été appelée avant la fin d’une opération asynchrone précédente.An XmlWriter method was called before a previous asynchronous operation finished. Dans ce cas, l’exception InvalidOperationException est levée avec le message « Une opération asynchrone est déjà en cours ».In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Un caractère dans la mémoire tampon est un caractère XML valide mais n'est pas valide pour l'encodage de sortie.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Par exemple, si l'encodage de sortie est ASCII, vous devez utiliser uniquement des caractères de la plage de 0 à 127 pour les noms d'éléments et d'attributs.For example, if the output encoding is ASCII, you should only use characters from the range of 0 to 127 for element and attribute names. Le caractère non valide peut être dans l'argument de cette méthode ou dans un argument des méthodes précédentes qui écrivaient dans la mémoire tampon.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Les caractères de ce type sont échappés par les références d'entité de caractère lorsque cela est possible (par exemple, dans les nœuds de texte ou les valeurs d'attribut).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Toutefois, la référence d'entité de caractère n'est pas autorisée dans les noms d'éléments et d'attributs, les commentaires, les instructions de traitement ou les sections CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Exemples

L’exemple suivant écrit un fragment XML.The following example writes out an XML fragment.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
public ref class Sample
{
private:
   static String^ m_Document = L"sampledata.xml";

public:
   static void Main()
   {
      XmlWriter^ writer = nullptr;
      try
      {
         XmlWriterSettings^ settings = gcnew XmlWriterSettings;
         settings->Indent = true;
         writer = XmlWriter::Create( m_Document,settings );
         writer->WriteComment( L"sample XML fragment" );
         
         // Write an element (this one is the root).
         writer->WriteStartElement( L"book" );
         
         // Write the namespace declaration.
         writer->WriteAttributeString( L"xmlns", L"bk", nullptr, L"urn:samples" );
         
         // Write the genre attribute.
         writer->WriteAttributeString( L"genre", L"novel" );
         
         // Write the title.
         writer->WriteStartElement( L"title" );
         writer->WriteString( L"The Handmaid's Tale" );
         writer->WriteEndElement();
         
         // Write the price.
         writer->WriteElementString( L"price", L"19.95" );
         
         // Lookup the prefix and write the ISBN element.
         String^ prefix = writer->LookupPrefix( L"urn:samples" );
         writer->WriteStartElement( prefix, L"ISBN", L"urn:samples" );
         writer->WriteString( L"1-861003-78" );
         writer->WriteEndElement();
         
         // Write the style element (shows a different way to handle prefixes).
         writer->WriteElementString( L"style", L"urn:samples", L"hardcover" );
         
         // Write the close tag for the root element.
         writer->WriteEndElement();
         
         // Write the XML to file and close the writer.
         writer->Flush();
         writer->Close();
      }
      finally
      {
         if ( writer != nullptr )
                  writer->Close();
      }

   }

};

void main()
{
   Sample::Main();
}

using System;
using System.IO;
using System.Xml;

 public class Sample
 {
   private const string m_Document = "sampledata.xml";

   public static void Main() {

      XmlWriter writer = null;

      try {

        XmlWriterSettings settings = new XmlWriterSettings();
        settings.Indent = true;
        writer = XmlWriter.Create (m_Document, settings);

        writer.WriteComment("sample XML fragment");

        // Write an element (this one is the root).
        writer.WriteStartElement("book");

        // Write the namespace declaration.
        writer.WriteAttributeString("xmlns", "bk", null, "urn:samples");

        // Write the genre attribute.
        writer.WriteAttributeString("genre", "novel");

        // Write the title.
        writer.WriteStartElement("title");
        writer.WriteString("The Handmaid's Tale");
        writer.WriteEndElement();

        // Write the price.
        writer.WriteElementString("price", "19.95");

        // Lookup the prefix and write the ISBN element.
        string prefix = writer.LookupPrefix("urn:samples");
        writer.WriteStartElement(prefix, "ISBN", "urn:samples");
        writer.WriteString("1-861003-78");
        writer.WriteEndElement();

        // Write the style element (shows a different way to handle prefixes).
        writer.WriteElementString("style", "urn:samples", "hardcover");

        // Write the close tag for the root element.
        writer.WriteEndElement();

        // Write the XML to file and close the writer.
        writer.Flush();
        writer.Close();
      }

      finally {
        if (writer != null)
           writer.Close();
     }
   }
 }
Option Strict
Option Explicit

Imports System.IO
Imports System.Xml

Public Class Sample
    Private Shared m_Document As String = "sampledata.xml"
    
    Public Shared Sub Main()
        Dim writer As XmlWriter = Nothing
        
      Try

        Dim settings As XmlWriterSettings = new XmlWriterSettings()
        settings.Indent = true
        writer = XmlWriter.Create (m_Document, settings)
            
        writer.WriteComment("sample XML fragment")
            
        ' Write an element (this one is the root).
        writer.WriteStartElement("book")
            
        ' Write the namespace declaration.
        writer.WriteAttributeString("xmlns", "bk", Nothing, "urn:samples")
            
        ' Write the genre attribute.
        writer.WriteAttributeString("genre", "novel")
            
        ' Write the title.
        writer.WriteStartElement("title")
        writer.WriteString("The Handmaid's Tale")
        writer.WriteEndElement()
            
        ' Write the price.
        writer.WriteElementString("price", "19.95")
            
        ' Lookup the prefix and write the ISBN element.
        Dim prefix As String = writer.LookupPrefix("urn:samples")
        writer.WriteStartElement(prefix, "ISBN", "urn:samples")
        writer.WriteString("1-861003-78")
        writer.WriteEndElement()
            
        ' Write the style element (shows a different way to handle prefixes).
        writer.WriteElementString("style", "urn:samples", "hardcover")
            
        ' Write the close tag for the root element.
        writer.WriteEndElement()
            
        ' Write the XML to file and close the writer.
        writer.Flush()
        writer.Close()
        
        Finally
            If Not (writer Is Nothing) Then
                writer.Close()
            End If
        End Try

    End Sub
End Class

Remarques

Pour obtenir la version asynchrone de cette méthode, consultez WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

S’applique à