Freigeben über


XmlTextReader.ReadString Methode

Definition

Liest den Inhalt eines Element- oder Textknotens als Zeichenfolge.

public:
 override System::String ^ ReadString();
public override string ReadString ();
override this.ReadString : unit -> string
Public Overrides Function ReadString () As String

Gibt zurück

Der Inhalt des Elementknotens oder Textknotens. Dies kann eine leere Zeichenfolge sein, wenn der Reader auf einem anderen Knotentyp als einem Element- oder Textknoten positioniert ist oder wenn im aktuellen Kontext kein weiterer Textinhalt zurückgegeben werden kann.

Note: Der Textknoten kann entweder ein Elementknoten oder ein Attributtextknoten sein.

Ausnahmen

Beim Analysieren des XML-Codes ist ein Fehler aufgetreten.

Es wurde versucht, eine ungültige Operation auszuführen.

Beispiele

Im folgenden Beispiel wird der Textinhalt der einzelnen Elemente angezeigt.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextReader^ reader = nullptr;
   try
   {
      
      //Load the reader with the XML file.
      reader = gcnew XmlTextReader( "elems.xml" );
      
      //Parse the XML and display the text content of each of the elements.
      while ( reader->Read() )
      {
         if ( reader->IsStartElement() )
         {
            if ( reader->IsEmptyElement )
                        Console::WriteLine( "<{0}/>", reader->Name );
            else
            {
               Console::Write( "<{0}> ", reader->Name );
               reader->Read(); //Read the start tag.
               if ( reader->IsStartElement() )
                              
               //Handle nested elements.
               Console::Write( "\r\n<{0}>", reader->Name );
               Console::WriteLine( reader->ReadString() ); //Read the text content of the element.
            }
         }
      }
   }
   finally
   {
      if ( reader != nullptr )
            reader->Close();
   }

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

public class Sample
{
  public static void Main()
  {
    XmlTextReader reader = null;

    try
    {
       //Load the reader with the XML file.
       reader = new XmlTextReader("elems.xml");

       //Parse the XML and display the text content of each of the elements.
       while (reader.Read()){
         if (reader.IsStartElement()){
           if (reader.IsEmptyElement)
                    {
                        Console.WriteLine("<{0}/>", reader.Name);
                    }
                    else
                    {
               Console.Write("<{0}> ", reader.Name);
               reader.Read(); //Read the start tag.
               if (reader.IsStartElement())  //Handle nested elements.
                 Console.Write("\r\n<{0}>", reader.Name);
               Console.WriteLine(reader.ReadString());  //Read the text content of the element.
           }
         }
       }
     }

     finally
     {
        if (reader != null)
          reader.Close();
      }
  }
} // End class
Option Strict
Option Explicit

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        Dim reader As XmlTextReader = Nothing
        
        Try
            'Load the reader with the XML file.
            reader = New XmlTextReader("elems.xml")
            
            'Parse the XML and display the text content of each of the elements.
            While reader.Read()
                If reader.IsStartElement() Then
                    If reader.IsEmptyElement Then
                        Console.WriteLine("<{0}/>", reader.Name)
                    Else
                        Console.Write("<{0}>" + " ", reader.Name)
                        reader.Read() 'Read the start tag.
                        If (reader.IsStartElement())  'Handle nested elements.
                          Console.WriteLine()
                          Console.Write("<{0}>", reader.Name)
                        End If
                        Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
                    End If
                End If
            End While
        
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub
End Class

Im Beispiel wird die Datei als elems.xmlEingabe verwendet.


<book>
  <title>Pride And Prejudice</title>
  <price>19.95</price>
  <misc/>
</book>

Hinweise

Hinweis

Ab dem .NET Framework 2.0 wird empfohlen, Instanzen mithilfe der XmlReader.Create -Methode zu erstellenXmlReader, um die neuen Funktionen zu nutzen.

Wenn sie auf einem Element positioniert sind, ReadString verkettet alle Texttypen, signifikanten Leerraum, Leerraum und CData Abschnittsknotentypen zusammen und gibt die verketteten Daten als Elementinhalt zurück. Sie wird beendet, wenn Markups gefunden werden, einschließlich Kommentaren und Verarbeitungsanweisungen. Dies könnte in einem Modell mit gemischtem Inhalt vorkommen oder wenn das Endtag eines Elements gelesen wird.

Wenn sie auf einem Textknoten positioniert ist, ReadString führt sie die gleiche Verkettung vom Textknoten mit dem Elementendtag aus. Wenn der Reader auf einem Attributtextknoten positioniert ist, verfügt ReadString über dieselben Funktionen wie bei einer Positionierung des Readers auf dem Starttag eines Elements. Alle verketteten Elementtextknoten werden zurückgegeben.

Gilt für:

Weitere Informationen