XmlNode.GetEnumerator XmlNode.GetEnumerator XmlNode.GetEnumerator XmlNode.GetEnumerator Method

定義

取得逐一查看目前節點中子節點的列舉程式。Gets an enumerator that iterates through the child nodes in the current node.

public:
 System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
member this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

傳回

IEnumerator 物件,可用來逐一查看目前節點中的子節點。An IEnumerator object that can be used to iterate through the child nodes in the current node.

實作

範例

下列範例會顯示 XML 檔中的所有書籍。The following example displays all the books in the XML document.

#using <System.Xml.dll>

using namespace System;
using namespace System::Collections;
using namespace System::Xml;
int main()
{
   XmlDocument^ doc = gcnew XmlDocument;
   doc->Load( "books.xml" );
   Console::WriteLine( "Display all the books..." );
   XmlNode^ root = doc->DocumentElement;
   IEnumerator^ ienum = root->GetEnumerator();
   XmlNode^ book;
   while ( ienum->MoveNext() )
   {
      book = dynamic_cast<XmlNode^>(ienum->Current);
      Console::WriteLine( book->OuterXml );
      Console::WriteLine();
   }
}

using System;
using System.Collections;
using System.Xml;

public class Sample {

  public static void Main() {
  
    XmlDocument doc = new XmlDocument();
    doc.Load("books.xml");

    Console.WriteLine("Display all the books...");
    XmlNode root = doc.DocumentElement;
    IEnumerator ienum = root.GetEnumerator();
    XmlNode book;
    while (ienum.MoveNext()) 
    {     
      book = (XmlNode) ienum.Current;
      Console.WriteLine(book.OuterXml);
      Console.WriteLine();
    }

  }
}
Imports System.Collections
Imports System.Xml

public class Sample

  public shared sub Main()
  
    Dim doc as XmlDocument = new XmlDocument()
    doc.Load("books.xml")

    Console.WriteLine("Display all the books...")
    Dim root as XmlNode = doc.DocumentElement
    Dim ienum as IEnumerator = root.GetEnumerator()
    Dim book as XmlNode
    while (ienum.MoveNext())      
      book = CType(ienum.Current, XmlNode)
      Console.WriteLine(book.OuterXml)
      Console.WriteLine()
    end while

  end sub
end class

此範例會使用books.xml檔案作為輸入。The example uses the file, books.xml, as input.


<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
  <book genre="autobiography" publicationdate="1981" ISBN="1-861003-11-0">
    <title>The Autobiography of Benjamin Franklin</title>
    <author>
      <first-name>Benjamin</first-name>
      <last-name>Franklin</last-name>
    </author>
    <price>8.99</price>
  </book>
  <book genre="novel" publicationdate="1967" ISBN="0-201-63361-2">
    <title>The Confidence Man</title>
    <author>
      <first-name>Herman</first-name>
      <last-name>Melville</last-name>
    </author>
    <price>11.99</price>
  </book>
  <book genre="philosophy" publicationdate="1991" ISBN="1-861001-57-6">
    <title>The Gorgias</title>
    <author>
      <name>Plato</name>
    </author>
    <price>9.99</price>
  </book>
</bookstore>

備註

針對中XmlNode的節點提供 "for each" 樣式反復專案的支援。Provides support for the "for each" style iteration over the nodes in the XmlNode.

這個方法是檔物件模型(DOM)的 Microsoft 擴充功能。This method is a Microsoft extension to the Document Object Model (DOM).

適用於