Export (0) Print
Expand All

XmlTextReader.Value Property

Gets the text value of the current node.

[Visual Basic]
Overrides Public ReadOnly Property Value As String
[C#]
public override string Value {get;}
[C++]
public: __property String* get_Value();
[JScript]
public override function get Value() : String;

Property Value

The value returned depends on the NodeType of the node. The following table lists node types that have a value to return. All other node types return String.Empty.

Node Type Value
Attribute The value of the attribute.
CDATA The content of the CDATA section.
Comment The content of the comment.
DocumentType The internal subset.
ProcessingInstruction The entire content, excluding the target.
SignificantWhitespace The white space within an xml:space= 'preserve' scope.
Text The content of the text node.
Whitespace The white space between markup.
XmlDeclaration The content of the declaration.

Example

[Visual Basic, C#, C++] The following example reads an XML file and displays each node.

[Visual Basic] 
Option Strict
Option Explicit

Imports System
Imports System.IO
Imports System.Xml

'Reads an XML document
Public Class Sample
    Private Const filename As String = "items.xml"
    
    Public Shared Sub Main()
        Dim reader As XmlTextReader = Nothing
        
        Try
            ' Load the reader with the data file and ignore all white space nodes.         
            reader = New XmlTextReader(filename)
            reader.WhitespaceHandling = WhitespaceHandling.None
            
            ' Parse the file and display each of the nodes.
            While reader.Read()
                Select Case reader.NodeType
                    Case XmlNodeType.Element
                        Console.Write("<{0}>", reader.Name)
                    Case XmlNodeType.Text
                        Console.Write(reader.Value)
                    Case XmlNodeType.CDATA
                        Console.Write("<![CDATA[{0}]]>", reader.Value)
                    Case XmlNodeType.ProcessingInstruction
                        Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
                    Case XmlNodeType.Comment
                        Console.Write("<!--{0}-->", reader.Value)
                    Case XmlNodeType.XmlDeclaration
                        Console.Write("<?xml version='1.0'?>")
                    Case XmlNodeType.Document
                    Case XmlNodeType.DocumentType
                        Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value)
                    Case XmlNodeType.EntityReference
                        Console.Write(reader.Name)
                    Case XmlNodeType.EndElement
                        Console.Write("</{0}>", reader.Name)
                End Select
            End While
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub 'Main 
End Class 'Sample

[C#] 
using System;
using System.IO;
using System.Xml;

public class Sample {

  private const String filename = "items.xml";

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

     try {
       
        // Load the reader with the data file and ignore all white space nodes.         
        reader = new XmlTextReader(filename);
        reader.WhitespaceHandling = WhitespaceHandling.None;

        // Parse the file and display each of the nodes.
        while (reader.Read()) {
           switch (reader.NodeType) {
             case XmlNodeType.Element:
               Console.Write("<{0}>", reader.Name);
               break;
             case XmlNodeType.Text:
               Console.Write(reader.Value);
               break;
             case XmlNodeType.CDATA:
               Console.Write("<![CDATA[{0}]]>", reader.Value);
               break;
             case XmlNodeType.ProcessingInstruction:
               Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
               break;
             case XmlNodeType.Comment:
               Console.Write("<!--{0}-->", reader.Value);
               break;
             case XmlNodeType.XmlDeclaration:
               Console.Write("<?xml version='1.0'?>");
               break;
             case XmlNodeType.Document:
               break;
             case XmlNodeType.DocumentType:
               Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value);
               break;
             case XmlNodeType.EntityReference:
               Console.Write(reader.Name);
               break;
             case XmlNodeType.EndElement:
               Console.Write("</{0}>", reader.Name);
               break;
           }       
        }           
     }

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

[C++] 
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;

int main() {

   XmlTextReader* reader = 0;
   String* filename = S"items.xml";

   try {

      // Load the reader with the data file and ignore all white space nodes.         
      reader = new XmlTextReader(filename);
      reader->WhitespaceHandling = WhitespaceHandling::None;

      // Parse the file and display each of the nodes.
      while (reader->Read()) {
         switch (reader->NodeType) {
             case XmlNodeType::Element:
                Console::Write(S"<{0}>", reader->Name);
                break;
             case XmlNodeType::Text:
                Console::Write(reader->Value);
                break;
             case XmlNodeType::CDATA:
                Console::Write(S"<![CDATA[{0}]]>", reader->Value);
                break;
             case XmlNodeType::ProcessingInstruction:
                Console::Write(S"<?{0} {1}?>", reader->Name, reader->Value);
                break;
             case XmlNodeType::Comment:
                Console::Write(S"<!--{0}-->", reader->Value);
                break;
             case XmlNodeType::XmlDeclaration:
                Console::Write(S"<?xml version='1.0'?>");
                break;
             case XmlNodeType::Document:
                break;
             case XmlNodeType::DocumentType:
                Console::Write(S"<!DOCTYPE {0} [{1}]", reader->Name, reader->Value);
                break;
             case XmlNodeType::EntityReference:
                Console::Write(reader->Name);
                break;
             case XmlNodeType::EndElement:
                Console::Write(S"</{0}>", reader->Name);
                break;
         }       
      }           
   }

   __finally {
      if (reader!=0)
         reader->Close();
   }
}

[Visual Basic, C#, C++] The sample uses the file items.xml.

<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
  <Item>Test with an entity: &number;</Item>
  <Item>test with a child element <more/> stuff</Item>
  <Item>test with a CDATA section <![CDATA[<456>]]> def</Item>
  <Item>Test with an char entity: &#65;</Item>
  <!-- Fourteen chars in this element.-->
  <Item>1234567890ABCD</Item>
</Items>

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard

See Also

XmlTextReader Class | XmlTextReader Members | System.Xml Namespace

Show:
© 2014 Microsoft