DirectoryInfo.EnumerateFiles Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve uma coleção enumerável de informação de ficheiro no diretório atual.
Sobrecargas
| Name | Description |
|---|---|
| EnumerateFiles() |
Devolve uma coleção enumerável de informação de ficheiro no diretório atual. |
| EnumerateFiles(String) |
Devolve uma coleção enumerável de informação de ficheiro que corresponde a um padrão de pesquisa. |
| EnumerateFiles(String, EnumerationOptions) |
Devolve uma coleção enumerável de informação de ficheiro que corresponde ao padrão de pesquisa especificado e às opções de enumeração. |
| EnumerateFiles(String, SearchOption) |
Devolve uma coleção enumerável de informação de ficheiro que corresponde a um padrão de pesquisa especificado e a opção de subdiretório de pesquisa. |
EnumerateFiles()
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
Devolve uma coleção enumerável de informação de ficheiro no diretório atual.
public:
System::Collections::Generic::IEnumerable<System::IO::FileInfo ^> ^ EnumerateFiles();
public System.Collections.Generic.IEnumerable<System.IO.FileInfo> EnumerateFiles();
member this.EnumerateFiles : unit -> seq<System.IO.FileInfo>
Public Function EnumerateFiles () As IEnumerable(Of FileInfo)
Devoluções
Uma coleção enumerável dos ficheiros no diretório atual.
Exceções
O caminho encapsulado no DirectoryInfo objeto é inválido (por exemplo, está num disco não mapeado).
O interlocutor não tem a permissão necessária.
Exemplos
O exemplo seguinte enumera os ficheiros sob um diretório especificado e utiliza uma consulta LINQ para devolver os nomes de todos os ficheiros criados antes de 2009, verificando o valor da CreationTimeUtc propriedade.
Se só precisares dos nomes dos ficheiros, usa a classe static Directory para melhor desempenho. Para obter um exemplo, consulte o Directory.EnumerateFiles(String) método.
// Create a DirectoryInfo of the directory of the files to enumerate.
DirectoryInfo DirInfo = new DirectoryInfo(@"\\archives1\library\");
DateTime StartOf2009 = new DateTime(2009, 01, 01);
// LINQ query for all files created before 2009.
var files = from f in DirInfo.EnumerateFiles()
where f.CreationTimeUtc < StartOf2009
select f;
// Show results.
foreach (var f in files)
{
Console.WriteLine("{0}", f.Name);
}
// Create a DirectoryInfo of the directory of the files to enumerate.
let dirInfo = DirectoryInfo @"\archives1\library\"
let startOf2009 = DateTime(2009, 01, 01)
// LINQ query for all files created before 2009.
let files =
query {
for f in dirInfo.EnumerateFiles() do
where (f.CreationTime < startOf2009)
select f
}
// Show results.
for f in files do
printfn $"{f.Name}"
' Create a DirectoryInfo of the directory of the files to enumerate.
Dim DirInfo As New DirectoryInfo("\\archives1\library\")
Dim StartOf2009 As New DateTime(2009, 1, 1)
' LINQ query for all files created before 2009.
Dim files = From f In DirInfo.EnumerateFiles()
Where f.CreationTimeUtc < StartOf2009
' Show results.
For Each f As FileInfo In files
Console.WriteLine("{0}", f.Name)
Next
O exemplo seguinte mostra como enumerar ficheiros num diretório usando diferentes opções de pesquisa. O exemplo assume um diretório que contém ficheiros nomeados log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, e um subdiretório que tem um ficheiro chamado SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.EnumerateFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.EnumerateFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.EnumerateFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.EnumerateFiles("*", SearchOption.AllDirectories))
{
Console.WriteLine(fi.Name);
}
}
}
}
/*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*/
open System.IO
let di = DirectoryInfo @"C:\ExampleDir"
printfn "No search pattern returns:"
for fi in di.EnumerateFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.EnumerateFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.EnumerateFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.EnumerateFiles("*", SearchOption.AllDirectories) do
printfn $"{fi.Name}"
(*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*)
Imports System.IO
Module Module1
Sub Main()
Dim di As DirectoryInfo = New DirectoryInfo("C:\ExampleDir")
Console.WriteLine("No search pattern returns:")
For Each fi In di.EnumerateFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.EnumerateFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.EnumerateFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.EnumerateFiles("*", SearchOption.AllDirectories)
Console.WriteLine(fi.Name)
Next
End Sub
End Module
' This code produces output similar to the following:
' No search pattern returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' Search pattern *2* returns:
' log2.txt
' test2.txt
' Search pattern test?.txt returns:
' test1.txt
' test2.txt
' test3.txt
' Search pattern AllDirectories returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' SubFile.txt
' Press any key to continue . . .
Observações
Os EnumerateFiles métodos e GetFiles diferem da seguinte forma:
Quando usas EnumerateFiles, podes começar a enumerar a coleção de FileInfo objetos antes de toda a coleção ser devolvida.
Quando usa GetFiles, tem de esperar que todo o array de FileInfo objetos seja devolvido antes de poder aceder ao array.
Por isso, quando trabalha com muitos ficheiros e diretórios, EnumerateFiles pode ser mais eficiente.
Este método preprepreenche os valores das seguintes FileInfo propriedades:
A coleção devolvida não é armazenada em cache; Cada chamada ao GetEnumerator método na coleção iniciará uma nova enumeração.
Aplica-se a
EnumerateFiles(String)
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
Devolve uma coleção enumerável de informação de ficheiro que corresponde a um padrão de pesquisa.
public:
System::Collections::Generic::IEnumerable<System::IO::FileInfo ^> ^ EnumerateFiles(System::String ^ searchPattern);
public System.Collections.Generic.IEnumerable<System.IO.FileInfo> EnumerateFiles(string searchPattern);
member this.EnumerateFiles : string -> seq<System.IO.FileInfo>
Public Function EnumerateFiles (searchPattern As String) As IEnumerable(Of FileInfo)
Parâmetros
- searchPattern
- String
A cadeia de pesquisa para comparar com os nomes dos ficheiros. Este parâmetro pode conter uma combinação de caracteres válidos de path literais e wildcard (* e ?), mas não suporta expressões regulares.
Devoluções
Uma coleção enumerável de ficheiros que corresponde searchPatterna .
Exceções
searchPattern é null.
O caminho encapsulado no DirectoryInfo objeto é inválido (por exemplo, está num disco não mapeado).
O interlocutor não tem a permissão necessária.
Exemplos
O exemplo seguinte mostra como enumerar ficheiros num diretório usando diferentes opções de pesquisa. O exemplo assume um diretório que contém ficheiros nomeados log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, e um subdiretório que tem um ficheiro chamado SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.EnumerateFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.EnumerateFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.EnumerateFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.EnumerateFiles("*", SearchOption.AllDirectories))
{
Console.WriteLine(fi.Name);
}
}
}
}
/*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*/
open System.IO
let di = DirectoryInfo @"C:\ExampleDir"
printfn "No search pattern returns:"
for fi in di.EnumerateFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.EnumerateFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.EnumerateFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.EnumerateFiles("*", SearchOption.AllDirectories) do
printfn $"{fi.Name}"
(*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*)
Imports System.IO
Module Module1
Sub Main()
Dim di As DirectoryInfo = New DirectoryInfo("C:\ExampleDir")
Console.WriteLine("No search pattern returns:")
For Each fi In di.EnumerateFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.EnumerateFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.EnumerateFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.EnumerateFiles("*", SearchOption.AllDirectories)
Console.WriteLine(fi.Name)
Next
End Sub
End Module
' This code produces output similar to the following:
' No search pattern returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' Search pattern *2* returns:
' log2.txt
' test2.txt
' Search pattern test?.txt returns:
' test1.txt
' test2.txt
' test3.txt
' Search pattern AllDirectories returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' SubFile.txt
' Press any key to continue . . .
Observações
searchPattern pode ser uma combinação de caracteres literais e coringa, mas não suporta expressões regulares. Os seguintes indicadores de wildcard são permitidos em searchPattern.
| Especificador de coringa | Resultados correspondentes |
|---|---|
| * (asterisco) | Zero ou mais personagens nessa posição. |
| ? (ponto de interrogação) | Zero ou um personagem nessa posição. |
Personagens que não sejam o coringa são personagens literais. Por exemplo, a cadeia "*t" procura todos os nomes que terminam com a letra "t". ". A searchPattern cadeia "s*" procura todos os nomes começando path pela letra "s".
Os EnumerateFiles métodos e GetFiles diferem da seguinte forma:
Quando usas EnumerateFiles, podes começar a enumerar a coleção de FileInfo objetos antes de toda a coleção ser devolvida.
Quando usa GetFiles, tem de esperar que todo o array de FileInfo objetos seja devolvido antes de poder aceder ao array.
Por isso, quando trabalha com muitos ficheiros e diretórios, EnumerateFiles pode ser mais eficiente.
Este método preprepreenche os valores das seguintes FileInfo propriedades:
A coleção devolvida não é armazenada em cache; Cada chamada ao GetEnumerator método na coleção iniciará uma nova enumeração.
Aplica-se a
EnumerateFiles(String, EnumerationOptions)
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
Devolve uma coleção enumerável de informação de ficheiro que corresponde ao padrão de pesquisa especificado e às opções de enumeração.
public:
System::Collections::Generic::IEnumerable<System::IO::FileInfo ^> ^ EnumerateFiles(System::String ^ searchPattern, System::IO::EnumerationOptions ^ enumerationOptions);
public System.Collections.Generic.IEnumerable<System.IO.FileInfo> EnumerateFiles(string searchPattern, System.IO.EnumerationOptions enumerationOptions);
member this.EnumerateFiles : string * System.IO.EnumerationOptions -> seq<System.IO.FileInfo>
Public Function EnumerateFiles (searchPattern As String, enumerationOptions As EnumerationOptions) As IEnumerable(Of FileInfo)
Parâmetros
- searchPattern
- String
A cadeia de pesquisa para comparar com os nomes dos ficheiros. Este parâmetro pode conter uma combinação de caracteres válidos de path literais e wildcard (* e ?), mas não suporta expressões regulares.
- enumerationOptions
- EnumerationOptions
Um objeto que descreve a configuração de pesquisa e enumeração a utilizar.
Devoluções
Uma coleção enumerável de ficheiros que corresponde searchPattern a e enumerationOptions.
Exceções
searchPattern é null.
O caminho encapsulado no DirectoryInfo objeto é inválido (por exemplo, está num disco não mapeado).
O interlocutor não tem a permissão necessária.
Observações
searchPattern pode ser uma combinação de caracteres literais e coringa, mas não suporta expressões regulares. Os seguintes indicadores de wildcard são permitidos em searchPattern.
| Especificador de coringa | Resultados correspondentes |
|---|---|
| * (asterisco) | Zero ou mais personagens nessa posição. |
| ? (ponto de interrogação) | Zero ou um personagem nessa posição. |
Personagens que não sejam o coringa são personagens literais. Por exemplo, a cadeia "*t" procura todos os nomes que terminam com a letra "t". ". A searchPattern cadeia "s*" procura todos os nomes começando path pela letra "s".
Os EnumerateFiles métodos e GetFiles diferem da seguinte forma:
Quando usas EnumerateFiles, podes começar a enumerar a coleção de FileInfo objetos antes de toda a coleção ser devolvida.
Quando usa GetFiles, tem de esperar que todo o array de FileInfo objetos seja devolvido antes de poder aceder ao array.
Por isso, quando trabalha com muitos ficheiros e diretórios, EnumerateFiles pode ser mais eficiente.
Este método preprepreenche os valores das seguintes FileInfo propriedades:
A coleção devolvida não é armazenada em cache; Cada chamada ao GetEnumerator método na coleção iniciará uma nova enumeração.
Aplica-se a
EnumerateFiles(String, SearchOption)
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
- Origem:
- DirectoryInfo.cs
Devolve uma coleção enumerável de informação de ficheiro que corresponde a um padrão de pesquisa especificado e a opção de subdiretório de pesquisa.
public:
System::Collections::Generic::IEnumerable<System::IO::FileInfo ^> ^ EnumerateFiles(System::String ^ searchPattern, System::IO::SearchOption searchOption);
public System.Collections.Generic.IEnumerable<System.IO.FileInfo> EnumerateFiles(string searchPattern, System.IO.SearchOption searchOption);
member this.EnumerateFiles : string * System.IO.SearchOption -> seq<System.IO.FileInfo>
Public Function EnumerateFiles (searchPattern As String, searchOption As SearchOption) As IEnumerable(Of FileInfo)
Parâmetros
- searchPattern
- String
A cadeia de pesquisa para comparar com os nomes dos ficheiros. Este parâmetro pode conter uma combinação de caracteres válidos de path literais e wildcard (* e ?), mas não suporta expressões regulares.
- searchOption
- SearchOption
Um dos valores de enumeração especifica se a operação de pesquisa deve incluir apenas o diretório atual ou todos os subdiretórios. O valor predefinido é TopDirectoryOnly.
Devoluções
Uma coleção enumerável de ficheiros que corresponde searchPattern a e searchOption.
Exceções
searchPattern é null.
searchOption não é um valor válido SearchOption .
O caminho encapsulado no DirectoryInfo objeto é inválido (por exemplo, está num disco não mapeado).
O interlocutor não tem a permissão necessária.
Exemplos
O exemplo seguinte mostra como enumerar ficheiros num diretório usando diferentes opções de pesquisa. O exemplo assume um diretório que contém ficheiros nomeados log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, e um subdiretório que tem um ficheiro chamado SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.EnumerateFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.EnumerateFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.EnumerateFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.EnumerateFiles("*", SearchOption.AllDirectories))
{
Console.WriteLine(fi.Name);
}
}
}
}
/*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*/
open System.IO
let di = DirectoryInfo @"C:\ExampleDir"
printfn "No search pattern returns:"
for fi in di.EnumerateFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.EnumerateFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.EnumerateFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.EnumerateFiles("*", SearchOption.AllDirectories) do
printfn $"{fi.Name}"
(*
This code produces output similar to the following:
No search pattern returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
Search pattern *2* returns:
log2.txt
test2.txt
Search pattern test?.txt returns:
test1.txt
test2.txt
test3.txt
Search pattern AllDirectories returns:
log1.txt
log2.txt
test1.txt
test2.txt
test3.txt
SubFile.txt
Press any key to continue . . .
*)
Imports System.IO
Module Module1
Sub Main()
Dim di As DirectoryInfo = New DirectoryInfo("C:\ExampleDir")
Console.WriteLine("No search pattern returns:")
For Each fi In di.EnumerateFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.EnumerateFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.EnumerateFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.EnumerateFiles("*", SearchOption.AllDirectories)
Console.WriteLine(fi.Name)
Next
End Sub
End Module
' This code produces output similar to the following:
' No search pattern returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' Search pattern *2* returns:
' log2.txt
' test2.txt
' Search pattern test?.txt returns:
' test1.txt
' test2.txt
' test3.txt
' Search pattern AllDirectories returns:
' log1.txt
' log2.txt
' test1.txt
' test2.txt
' test3.txt
' SubFile.txt
' Press any key to continue . . .
Observações
searchPattern pode ser uma combinação de caracteres literais e coringa, mas não suporta expressões regulares. Os seguintes indicadores de wildcard são permitidos em searchPattern.
| Especificador de coringa | Resultados correspondentes |
|---|---|
| * (asterisco) | Zero ou mais personagens nessa posição. |
| ? (ponto de interrogação) | Zero ou um personagem nessa posição. |
Personagens que não sejam o coringa são personagens literais. Por exemplo, a cadeia "*t" procura todos os nomes que terminam com a letra "t". ". A searchPattern cadeia "s*" procura todos os nomes começando path pela letra "s".
Os EnumerateFiles métodos e GetFiles diferem da seguinte forma:
Quando usas EnumerateFiles, podes começar a enumerar a coleção de FileInfo objetos antes de toda a coleção ser devolvida.
Quando usa GetFiles, tem de esperar que todo o array de FileInfo objetos seja devolvido antes de poder aceder ao array.
Por isso, quando trabalha com muitos ficheiros e diretórios, EnumerateFiles pode ser mais eficiente.
Este método preprepreenche os valores das seguintes FileInfo propriedades:
A coleção devolvida não é armazenada em cache; Cada chamada ao GetEnumerator método na coleção iniciará uma nova enumeração.