XmlTextReader.NodeType, propriété (System.Xml)

Changer de vue:
ScriptFree
Bibliothèque de classes .NET Framework
XmlTextReader.NodeType, propriété

Obtient le type du nœud actuel.

Espace de noms : System.Xml
Assembly : System.Xml (dans system.xml.dll)

Syntaxe

Visual Basic (Déclaration)
Public Overrides ReadOnly Property NodeType As XmlNodeType
Visual Basic (Utilisation)
Dim instance As XmlTextReader
Dim value As XmlNodeType

value = instance.NodeType

C#
public override XmlNodeType NodeType { get; }
C++
public:
virtual property XmlNodeType NodeType {
	XmlNodeType get () override;
}
J#
/** @property */
public XmlNodeType get_NodeType ()

JScript
public override function get NodeType () : XmlNodeType

Valeur de la propriété

Une des valeurs XmlNodeType représentant le type du nœud actuel.
Notes

RemarqueRemarque

Dans la version Microsoft .NET Framework version 2.0, la méthode recommandée consiste à créer des instances XmlReader à l'aide de la méthode System.Xml.XmlReader.Create. Cela vous permet de tirer pleinement parti des nouvelles fonctionnalités incluses dans cette version. Pour plus d'informations, consultez Création de lecteurs XML.

Cette propriété ne retourne jamais les types XmlNodeType suivants : Document, DocumentFragment, Entity, EndEntity ou Notation.

Exemple

L'exemple suivant lit un fichier XML et affiche chacun des nœuds.

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 <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextReader^ reader = nullptr;
   String^ filename = "items.xml";
   try
   {
      
      // Load the reader with the data file and ignore all white space nodes.         
      reader = gcnew 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 != nullptr )
            reader->Close();
   }

}


J#
import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    private static String fileName = "items.xml";

    public static void main(String[] args)
    {
        XmlTextReader reader = null;
        try {

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

            // Parse the file and display each of the nodes.
            while(reader.Read()) {
                switch(reader.get_NodeType() ) {
                    case XmlNodeType.Element : 
                        Console.Write("<{0}>", reader.get_Name());
                        break;
                    case XmlNodeType.Text : 
                        Console.Write(reader.get_Value());
                        break;
                    case XmlNodeType.CDATA : 
                        Console.Write("<![CDATA[{0}]]>", reader.get_Value());
                        break;
                    case XmlNodeType.ProcessingInstruction : 
                        Console.Write("<?{0} {1}?>", reader.get_Name(),
                        reader.get_Value());
                        break;
                    case XmlNodeType.Comment : 
                        Console.Write("<!--{0}-->", reader.get_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.get_Name(),
                        reader.get_Value());
                        break;
                    case XmlNodeType.EntityReference : 
                        Console.Write(reader.get_Name());
                        break;
                    case XmlNodeType.EndElement : 
                        Console.Write("</{0}>", reader.get_Name());
                        break;
                }
            }
        }
        finally {
            if (reader != null) {
                reader.Close();
            }
        }
    } //main
} // End class Sample

L'exemple utilise le fichier 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>

Plates-formes

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile pour Pocket PC, Windows Mobile pour Smartphone, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

Informations de version

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

.NET Compact Framework

Prise en charge dans : 2.0, 1.0
Voir aussi