This documentation is archived and is not being maintained.

XmlReader.ReadElementString Method

Reads a text-only element.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)

Public Overridable Function ReadElementString As String
Dim instance As XmlReader 
Dim returnValue As String 

returnValue = instance.ReadElementString()

Return Value

Type: System.String
The text contained in the element that was read. An empty string if the element is empty (<item></item> or <item/>).


The next content node is not a start tag; or the element found does not contain a simple text value.

This is a helper method for reading simple text-only elements. It calls MoveToContent to find the next content node and then parses its value as a simple string.

Using the XML, <name>Arlene Huff</name>, ReadElementString consumes the element and returns the string Arlene Huff.

This method cannot handle any markup (child elements, comments, processing instructions, and so on) inside the name element, but it can concatenate multiple adjacent text and CDATA blocks.

After calling this method the reader will be positioned on the node following the EndElement node or after the empty element tag.

The following example uses ReadElementString to read the contents of the element nodes.

Imports System
Imports System.Xml

public class Sample

  private const filename as string = "book.xml"

  public shared Sub Main()

    Dim reader as XmlTextReader = Nothing


      ' Load the file and ignore all white space.
      reader = new XmlTextReader(filename)
      reader.WhitespaceHandling = WhitespaceHandling.None

      ' Moves the reader to the root element.

      ' Read the title and price elements.
      Console.WriteLine("Content of the title element: {0}", reader.ReadElementString())
      Console.WriteLine("Content of the price element: {0}", reader.ReadElementString())

      if Not reader Is Nothing
      End if
    End try

  End Sub 
End class
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Xml;

int main()
   String* filename = S"book.xml";
   XmlTextReader* reader = 0;

      //Load the file and ignore all whitespace.
      reader = new XmlTextReader(filename);
      reader->WhitespaceHandling = WhitespaceHandling::None;

      //Moves the reader to the root element.

      //Read the title and price elements.
      Console::WriteLine(S"Content of the title element: {0}", reader->ReadElementString());
      Console::WriteLine(S"Content of the price element: {0}", reader->ReadElementString());

      if (reader!=0)

The example uses the data file book.xml:

<!--sample XML fragment-->
<book genre='novel' ISBN='1-861003-78' misc='sale-item'>
  <title>The Handmaid's Tale</title>

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0