XmlNodeReader.MoveToNextAttribute 方法

定义

移动到下一个属性。

public:
 override bool MoveToNextAttribute();
public override bool MoveToNextAttribute ();
override this.MoveToNextAttribute : unit -> bool
Public Overrides Function MoveToNextAttribute () As Boolean

返回

Boolean

如果存在下一个属性,则为 true;如果没有其他属性,则为 false

示例

下面的示例阅读了一本书。

#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlNodeReader^ reader = nullptr;
   try
   {
      
      //Create and load the XML document.
      XmlDocument^ doc = gcnew XmlDocument;
      doc->LoadXml( "<book genre='novel' ISBN='1-861003-78'> "
      "<title>Pride And Prejudice</title>"
      "<price>19.95</price>"
      "</book>" );
      
      //Load the XmlNodeReader 
      reader = gcnew XmlNodeReader( doc );
      
      //Read the attributes on the book element.
      reader->MoveToContent();
      while ( reader->MoveToNextAttribute() )
      {
         Console::WriteLine( "{0} = {1}", reader->Name, reader->Value );
      }
      
      //Move the reader to the title element.
      reader->Read();
      
      //Read the title and price elements.
      Console::WriteLine( reader->ReadElementString() );
      Console::WriteLine( reader->ReadElementString() );
   }
   finally
   {
      if ( reader != nullptr )
            reader->Close();
   }

}
using System;
using System.IO;
using System.Xml;

public class Sample
{
  public static void Main()
  {
    XmlNodeReader reader = null;

    try
    {
       //Create and load the XML document.
       XmlDocument doc = new XmlDocument();
       doc.LoadXml("<book genre='novel' ISBN='1-861003-78'> " +
                   "<title>Pride And Prejudice</title>" +
                   "<price>19.95</price>" +
                   "</book>");

       //Load the XmlNodeReader
       reader = new XmlNodeReader(doc);

       //Read the attributes on the book element.
       reader.MoveToContent();
       while (reader.MoveToNextAttribute())
       {
         Console.WriteLine("{0} = {1}", reader.Name, reader.Value);
       }

       //Move the reader to the title element.
       reader.Read();

       //Read the title and price elements.
       Console.WriteLine(reader.ReadElementString());
       Console.WriteLine(reader.ReadElementString());
     }

     finally
     {
        if (reader != null)
          reader.Close();
      }
  }
} // End class
Option Explicit
Option Strict

Imports System.IO
Imports System.Xml

Public Class Sample
    
    Public Shared Sub Main()
        Dim reader As XmlNodeReader = Nothing
        
        Try
            'Create and load the XML document.
            Dim doc As New XmlDocument()
            doc.LoadXml("<book genre='novel' ISBN='1-861003-78'> " & _
                       "<title>Pride And Prejudice</title>" & _
                       "<price>19.95</price>" & _
                       "</book>")
            
            'Load the XmlNodeReader 
            reader = New XmlNodeReader(doc)
            
            'Read the attributes on the book element.
            reader.MoveToContent()
            While reader.MoveToNextAttribute()
                Console.WriteLine("{0} = {1}", reader.Name, reader.Value)
            End While
            
            'Move the reader to the title element.
            reader.Read()
            
            'Read the title and price elements.
            Console.WriteLine(reader.ReadElementString())
            Console.WriteLine(reader.ReadElementString())
        
        Finally
            If Not (reader Is Nothing) Then
                reader.Close()
            End If
        End Try
    End Sub
End Class

注解

备注

在 .NET Framework 2.0 中,建议的做法是使用XmlReaderSettings类和Create方法创建XmlReader实例。 这样就可以充分利用.NET Framework中引入的所有新功能。 有关详细信息,请参阅参考页中的 XmlReader “备注”部分。

如果当前节点不是属性节点,则此方法等效于 MoveToFirstAttribute。 如果 MoveToNextAttribute 返回 true,读取器将移动到下一个属性;否则,读取器的位置不会更改。

适用于