XmlTextReader::XmlSpace Property

 

Gets the current xml:space scope.

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

public:
property XmlSpace XmlSpace {
	virtual XmlSpace get() override;
}

Property Value

Type: System.Xml::XmlSpace

One of the XmlSpace values. If no xml:space scope exists, this property defaults to XmlSpace.None.

System_CAPS_noteNote

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.

The following example parses a file and returns significant white space if an xml:space='preserve' scope is found.

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextReader^ reader = gcnew XmlTextReader( "authors.xml" );
   reader->WhitespaceHandling = WhitespaceHandling::None;

   // Parse the file.  Return white space only if an
   // xml:space='preserve' attribute is found.
   while ( reader->Read() )
   {
      switch ( reader->NodeType )
      {
         case XmlNodeType::Element:
            Console::Write( "<{0}>", reader->Name );
            if ( reader->XmlSpace == XmlSpace::Preserve )
                        reader->WhitespaceHandling = WhitespaceHandling::Significant;
            break;

         case XmlNodeType::Text:
            Console::Write( reader->Value );
            break;

         case XmlNodeType::EndElement:
            Console::Write( "</{0}>", reader->Name );
            break;

         case XmlNodeType::SignificantWhitespace:
            Console::Write( reader->Value );
            break;
      }
   }
}

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

.NET Framework
Available since 1.1
Return to top
Show: