XmlWriter.WriteStartElement Metoda

Definice

Při přepsání v odvozené třídě zapíše zadanou počáteční značku.When overridden in a derived class, writes the specified start tag.

Přetížení

WriteStartElement(String)

Při přepsání v odvozené třídě zapíše počáteční značku se zadaným místním názvem.When overridden in a derived class, writes out a start tag with the specified local name.

WriteStartElement(String, String)

Při přepsání v odvozené třídě zapíše zadanou počáteční značku a přidruží ji k danému oboru názvů.When overridden in a derived class, writes the specified start tag and associates it with the given namespace.

WriteStartElement(String, String, String)

Při přepsání v odvozené třídě zapíše zadanou počáteční značku a přidruží ji k danému oboru názvů a předponu.When overridden in a derived class, writes the specified start tag and associates it with the given namespace and prefix.

Poznámky

Asynchronní verze této metody naleznete v tématu WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

WriteStartElement(String)

Při přepsání v odvozené třídě zapíše počáteční značku se zadaným místním názvem.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)

Parametry

localName
String

Místní název elementu.The local name of the element.

Výjimky

Zapisovač je uzavřený.The writer is closed.

-nebo--or-

XmlWriterMetoda byla volána před dokončením předchozí asynchronní operace.An XmlWriter method was called before a previous asynchronous operation finished. V tomto případě InvalidOperationException je vyvolána se zprávou "asynchronní operace již probíhá".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Ve vyrovnávací paměti je znak, který je platným znakem XML, ale není platný pro výstupní kódování.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Například pokud je výstupní kódování ASCII, měli byste použít pouze znaky z rozsahu 0 až 127 pro názvy elementů a atributů.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. Neplatný znak může být v argumentu této metody nebo v argumentu předchozích metod, které byly zapsány do vyrovnávací paměti.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tyto znaky jsou uvozeny odkazy na znakové entity, pokud je to možné (například v textových uzlech nebo hodnotách atributů).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Odkaz na entitu znaků však není povolen v sekcích a názvech atributů, komentářích, instrukcích zpracování nebo CDATA oddílech.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Příklady

Následující příklad zapisuje uzel 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

Poznámky

Asynchronní verze této metody naleznete v tématu WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

Platí pro

WriteStartElement(String, String)

Při přepsání v odvozené třídě zapíše zadanou počáteční značku a přidruží ji k danému oboru názvů.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)

Parametry

localName
String

Místní název elementu.The local name of the element.

ns
String

Identifikátor URI oboru názvů, který se má přidružit k elementu.The namespace URI to associate with the element. Pokud tento obor názvů je již v oboru a má přidruženu předponu, zapisovač automaticky zapíše tuto předponu také.If this namespace is already in scope and has an associated prefix, the writer automatically writes that prefix also.

Výjimky

Zapisovač je uzavřený.The writer is closed.

-nebo--or-

XmlWriterMetoda byla volána před dokončením předchozí asynchronní operace.An XmlWriter method was called before a previous asynchronous operation finished. V tomto případě InvalidOperationException je vyvolána se zprávou "asynchronní operace již probíhá".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Ve vyrovnávací paměti je znak, který je platným znakem XML, ale není platný pro výstupní kódování.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Například pokud je výstupní kódování ASCII, měli byste použít pouze znaky z rozsahu 0 až 127 pro názvy elementů a atributů.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. Neplatný znak může být v argumentu této metody nebo v argumentu předchozích metod, které byly zapsány do vyrovnávací paměti.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tyto znaky jsou uvozeny odkazy na znakové entity, pokud je to možné (například v textových uzlech nebo hodnotách atributů).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Odkaz na entitu znaků však není povolen v sekcích a názvech atributů, komentářích, instrukcích zpracování nebo CDATA oddílech.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Poznámky

Po volání této metody můžete napsat atributy nebo vytvořit obsah pomocí WriteComment , WriteString nebo WriteStartElement pro podřízené elementy.After calling this method you can either write attributes, or create content using WriteComment, WriteString, or WriteStartElement for child elements. Element lze zavřít buď pomocí, WriteEndElement nebo WriteFullEndElement .You can close the element with either WriteEndElement or WriteFullEndElement. Například následující kód jazyka C#:For example, the following C# code:

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

Generuje následující výstup:Generates the following output:

<item>some text</item>  

Asynchronní verze této metody naleznete v tématu WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

Platí pro

WriteStartElement(String, String, String)

Při přepsání v odvozené třídě zapíše zadanou počáteční značku a přidruží ji k danému oboru názvů a předponu.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)

Parametry

prefix
String

Předpona oboru názvů elementu.The namespace prefix of the element.

localName
String

Místní název elementu.The local name of the element.

ns
String

Identifikátor URI oboru názvů, který se má přidružit k elementu.The namespace URI to associate with the element.

Výjimky

Zapisovač je uzavřený.The writer is closed.

-nebo--or-

XmlWriterMetoda byla volána před dokončením předchozí asynchronní operace.An XmlWriter method was called before a previous asynchronous operation finished. V tomto případě InvalidOperationException je vyvolána se zprávou "asynchronní operace již probíhá".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Ve vyrovnávací paměti je znak, který je platným znakem XML, ale není platný pro výstupní kódování.There is a character in the buffer that is a valid XML character but is not valid for the output encoding. Například pokud je výstupní kódování ASCII, měli byste použít pouze znaky z rozsahu 0 až 127 pro názvy elementů a atributů.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. Neplatný znak může být v argumentu této metody nebo v argumentu předchozích metod, které byly zapsány do vyrovnávací paměti.The invalid character might be in the argument of this method or in an argument of previous methods that were writing to the buffer. Tyto znaky jsou uvozeny odkazy na znakové entity, pokud je to možné (například v textových uzlech nebo hodnotách atributů).Such characters are escaped by character entity references when possible (for example, in text nodes or attribute values). Odkaz na entitu znaků však není povolen v sekcích a názvech atributů, komentářích, instrukcích zpracování nebo CDATA oddílech.However, the character entity reference is not allowed in element and attribute names, comments, processing instructions, or CDATA sections.

Příklady

Následující příklad zapisuje 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

Poznámky

Asynchronní verze této metody naleznete v tématu WriteStartElementAsync .For the asynchronous version of this method, see WriteStartElementAsync.

Platí pro