แก้ไข

แชร์ผ่าน


XmlTextReader.XmlSpace Property

Definition

Gets the current xml:space scope.

public:
 virtual property System::Xml::XmlSpace XmlSpace { System::Xml::XmlSpace get(); };
public override System.Xml.XmlSpace XmlSpace { get; }
member this.XmlSpace : System.Xml.XmlSpace
Public Overrides ReadOnly Property XmlSpace As XmlSpace

Property Value

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

Examples

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;
      }
   }
}
using System;
using System.IO;
using System.Xml;

public class Sample{

  public static void Main(){

     XmlTextReader reader = new 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;
       }
     }
  }
}
Imports System.IO
Imports System.Xml

public class Sample

  public shared sub Main()

     Dim reader as XmlTextReader = new 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())
       select case reader.NodeType
         case XmlNodeType.Element:
           Console.Write("<{0}>", reader.Name)
           if (reader.XmlSpace=XmlSpace.Preserve)
             reader.WhitespaceHandling=WhitespaceHandling.Significant
           end if
         case XmlNodeType.Text:
           Console.Write(reader.Value)
         case XmlNodeType.EndElement:
           Console.Write("</{0}>", reader.Name)
         case XmlNodeType.SignificantWhitespace:
           Console.Write(reader.Value)        
       end select              
     end while
  end sub
end class

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

Remarks

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.

Applies to

See also