XmlTextReader.XmlSpace 属性

定义

获取当前 xml:space 范围。

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

属性值

XmlSpace

XmlSpace 值之一。 如果不存在任何 xml:space 范围,则该属性默认值为 XmlSpace.None

示例

以下示例分析文件,并在找到范围时 xml:space='preserve' 返回大量空白。

#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

此示例使用该文件 authors.xml作为输入。

注解

备注

从 .NET Framework 2.0 开始,我们建议使用该方法XmlReader.Create利用新功能来创建XmlReader实例。

适用于

另请参阅