XmlWriter.WriteStartElement XmlWriter.WriteStartElement XmlWriter.WriteStartElement XmlWriter.WriteStartElement Method

Definizione

Quando ne viene eseguito l'override in una classe derivata, scrive il tag di inizio specificato.When overridden in a derived class, writes the specified start tag.

Overload

WriteStartElement(String) WriteStartElement(String) WriteStartElement(String) WriteStartElement(String)

Quando ne viene eseguito l'override in una classe derivata, scrive un tag di inizio con il nome locale specificato.When overridden in a derived class, writes out a start tag with the specified local name.

WriteStartElement(String, String) WriteStartElement(String, String) WriteStartElement(String, String) WriteStartElement(String, String)

Quando ne viene eseguito l'override in una classe derivata, scrive il tag di inizio specificato e lo associa allo spazio dei nomi indicato.When overridden in a derived class, writes the specified start tag and associates it with the given namespace.

WriteStartElement(String, String, String) WriteStartElement(String, String, String) WriteStartElement(String, String, String) WriteStartElement(String, String, String)

Quando ne viene eseguito l'override in una classe derivata, scrive il tag di inizio specificato e lo associa allo spazio dei nomi e al prefisso specificati.When overridden in a derived class, writes the specified start tag and associates it with the given namespace and prefix.

Commenti

Per la versione asincrona di questo metodo, vedere WriteStartElementAsync.For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String) WriteStartElement(String) WriteStartElement(String) WriteStartElement(String)

Quando ne viene eseguito l'override in una classe derivata, scrive un tag di inizio con il nome locale specificato.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)

Parametri

localName
String String String String

Nome locale dell'elemento.The local name of the element.

Eccezioni

Il writer viene chiuso.The writer is closed.

-oppure--or-

È stato chiamato un metodo della classe XmlWriter prima del completamento di un'operazione asincrona precedente.An XmlWriter method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Nel buffer è presente un carattere XML valido che non è valido per la codifica di output.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Ad esempio, se la codifica di output è ASCII, è necessario utilizzare solo caratteri dell'intervallo compreso tra 0 e 127 per nomi di elemento e di attributo.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. Il carattere non valido potrebbe essere nell'argomento di questo metodo o in un argomento di metodi precedenti che stanno scrivendo nel buffer.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tali caratteri vengono preceduti, quando possibile, da caratteri di escape costituiti da riferimenti a un'entità carattere, ad esempio in nodi di testo o valori di attributo.Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Tuttavia, il riferimento a un'entità di caratteri non è consentita in nomi di elemento e di attributo, commenti, istruzioni di elaborazione o sezioni CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Esempi

Nell'esempio seguente viene scritto un nodo 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

Commenti

Per la versione asincrona di questo metodo, vedere WriteStartElementAsync.For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String, String) WriteStartElement(String, String) WriteStartElement(String, String) WriteStartElement(String, String)

Quando ne viene eseguito l'override in una classe derivata, scrive il tag di inizio specificato e lo associa allo spazio dei nomi indicato.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);
member this.WriteStartElement : string * string -> unit
Public Sub WriteStartElement (localName As String, ns As String)

Parametri

localName
String String String String

Nome locale dell'elemento.The local name of the element.

ns
String String String String

URI dello spazio dei nomi da associare all'elemento.The namespace URI to associate with the element. Se questo spazio dei nomi si trova già all'interno dell'ambito ed è associato a un prefisso, il writer scriverà automaticamente anche tale prefisso.If this namespace is already in scope and has an associated prefix, the writer automatically writes that prefix also.

Eccezioni

Il writer viene chiuso.The writer is closed.

In alternativa-or-

È stato chiamato un metodo della classe XmlWriter prima del completamento di un'operazione asincrona precedente.An XmlWriter method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Nel buffer è presente un carattere XML valido che non è valido per la codifica di output.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Ad esempio, se la codifica di output è ASCII, è necessario utilizzare solo caratteri dell'intervallo compreso tra 0 e 127 per nomi di elemento e di attributo.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. Il carattere non valido potrebbe essere nell'argomento di questo metodo o in un argomento di metodi precedenti che stanno scrivendo nel buffer.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tali caratteri vengono preceduti, quando possibile, da caratteri di escape costituiti da riferimenti a un'entità carattere, ad esempio in nodi di testo o valori di attributo.Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Tuttavia, il riferimento a un'entità di caratteri non è consentita in nomi di elemento e di attributo, commenti, istruzioni di elaborazione o sezioni CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Commenti

Dopo la chiamata a questo metodo, è possibile scrivere attributi oppure creare contenuti WriteCommentusando WriteString, o WriteStartElement per gli elementi figlio.After calling this method you can either write attributes, or create content using WriteComment, WriteString, or WriteStartElement for child elements. È possibile chiudere l'elemento con WriteEndElement o. WriteFullEndElementYou can close the element with either WriteEndElement or WriteFullEndElement. Ad esempio, il codice C# seguente:For example, the following C# code:

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

Genera l'output seguente:Generates the following output:

<item>some text</item>  

Per la versione asincrona di questo metodo, vedere WriteStartElementAsync.For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String, String, String) WriteStartElement(String, String, String) WriteStartElement(String, String, String) WriteStartElement(String, String, String)

Quando ne viene eseguito l'override in una classe derivata, scrive il tag di inizio specificato e lo associa allo spazio dei nomi e al prefisso specificati.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);
abstract member WriteStartElement : string * string * string -> unit
Public MustOverride Sub WriteStartElement (prefix As String, localName As String, ns As String)

Parametri

prefix
String String String String

Prefisso dello spazio dei nomi dell'elemento.The namespace prefix of the element.

localName
String String String String

Nome locale dell'elemento.The local name of the element.

ns
String String String String

URI dello spazio dei nomi da associare all'elemento.The namespace URI to associate with the element.

Eccezioni

Il writer viene chiuso.The writer is closed.

In alternativa-or-

È stato chiamato un metodo della classe XmlWriter prima del completamento di un'operazione asincrona precedente.An XmlWriter method was called before a previous asynchronous operation finished. In questo caso, viene generata l'eccezione InvalidOperationException con il messaggio "È già in corso un'operazione asincrona".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Nel buffer è presente un carattere XML valido che non è valido per la codifica di output.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Ad esempio, se la codifica di output è ASCII, è necessario utilizzare solo caratteri dell'intervallo compreso tra 0 e 127 per nomi di elemento e di attributo.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. Il carattere non valido potrebbe essere nell'argomento di questo metodo o in un argomento di metodi precedenti che stanno scrivendo nel buffer.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tali caratteri vengono preceduti, quando possibile, da caratteri di escape costituiti da riferimenti a un'entità carattere, ad esempio in nodi di testo o valori di attributo.Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Tuttavia, il riferimento a un'entità di caratteri non è consentita in nomi di elemento e di attributo, commenti, istruzioni di elaborazione o sezioni CDATA.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Esempi

Nell'esempio seguente viene scritto un frammento 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

Commenti

Per la versione asincrona di questo metodo, vedere WriteStartElementAsync.For the asynchronous version of this method, see WriteStartElementAsync.

Si applica a