Share via


XmlTextReader.ReadString Yöntem

Tanım

Bir öğenin veya metin düğümünün içeriğini dize olarak okur.

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

Döndürülenler

Öğenin veya metin düğümünün içeriği. Okuyucu bir öğe veya metin düğümü dışında bir şeye konumlandırılmışsa veya geçerli bağlamda döndürülecek başka metin içeriği yoksa, bu boş bir dize olabilir.

Note: Metin düğümü bir öğe veya öznitelik metin düğümü olabilir.

Özel durumlar

XML ayrıştırılırken bir hata oluştu.

Geçersiz bir işlem denendi.

Örnekler

Aşağıdaki örnekte her öğenin metin içeriği görüntülenir.

#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

Örnekte giriş elems.xmlolarak dosyası kullanılır.


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

Açıklamalar

Not

.NET Framework 2.0'dan başlayarak, yeni işlevlerden yararlanmak için yöntemini kullanarak XmlReader.Create örnekler oluşturmanızı XmlReader öneririz.

Bir öğeye konumlandırıldıysa, ReadString tüm metinleri, önemli boşluk, boşluk ve CData bölüm düğümü türlerini birleştirir ve birleştirilmiş verileri öğe içeriği olarak döndürür. Açıklamalar ve işleme yönergeleri de dahil olmak üzere herhangi bir işaretlemeyle karşılaşıldığında durdurulur. Bu, karma içerik modelinde veya öğe bitiş etiketi okunduğunda oluşabilir.

Bir metin düğümünde konumlandırıldıysa, ReadString metin düğümünden öğe bitiş etiketine aynı birleştirmeyi gerçekleştirir. Okuyucu bir öznitelik metin düğümünde konumlandırıldıysa, ReadString okuyucu öğe başlangıç etiketinde konumlandırılmış gibi aynı işlevlere sahiptir. Tüm birleştirilmiş öğe metin düğümlerini döndürür.

Şunlara uygulanır

Ayrıca bkz.