XmlTextReader::NodeType Property
.NET Framework (current version)
Gets the type of the current node.
Assembly: System.Xml (in System.Xml.dll)
Property Value
Type: System.Xml::XmlNodeTypeOne of the XmlNodeType values representing the type of the current node.
Note |
|---|
Starting with the .NET Framework 2.0, we recommend that you create XmlReader instances by using the XmlReader::Create method to take advantage of new functionality. |
This property never returns the following XmlNodeType types: Document, DocumentFragment, Entity, EndEntity, or Notation.
The following example reads an XML file and displays each of the nodes.
#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(); } }
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: A</Item> <!-- Fourteen chars in this element.--> <Item>1234567890ABCD</Item> </Items>
.NET Framework
Available since 1.1
Available since 1.1
Show:
