Export (0) Print
Expand All

XmlNodeReader.NodeType Property

Gets the type of the current node.

[Visual Basic]
Overrides Public ReadOnly Property NodeType As XmlNodeType
[C#]
public override XmlNodeType NodeType {get;}
[C++]
public: __property XmlNodeType get_NodeType();
[JScript]
public override function get NodeType() : XmlNodeType;

Property Value

One of the XmlNodeType values representing the type of the current node.

Example

[Visual Basic, C#, C++] The following example reads an XML and displays each of the nodes.

[Visual Basic] 
Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    Private Const filename As String = "items.xml"
    Public Shared Sub Main()
        Dim reader As XmlNodeReader = Nothing
        Try
            'Create an XmlNodeReader to read the XmlDocument.
            Dim doc As New XmlDocument()
            doc.Load(filename)
            reader = New XmlNodeReader(doc)
            
            '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(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.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
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()
  {
    XmlNodeReader reader = null;

    try
    {           
        //Create an XmlNodeReader to read the XmlDocument.
        XmlDocument doc = new XmlDocument();
        doc.Load(filename);
        reader = new XmlNodeReader(doc);

        //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(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.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()
{
   String* filename = S"items.xml";
   XmlNodeReader* reader = 0;

   try
   {           
      //Create an XmlNodeReader to read the XmlDocument.
      XmlDocument* doc = new XmlDocument();
      doc->Load(filename);
      reader = new XmlNodeReader(doc);

      //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(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::EndElement:
            Console::Write(S"</{0}>", reader->Name);
            break;
         }       
      }           
   }

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

The example uses the file, items.xml, as input.

<?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 a 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

See Also

XmlNodeReader Class | XmlNodeReader Members | System.Xml Namespace

Show:
© 2014 Microsoft