DirectoryInfo.EnumerateFiles Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan kumpulan informasi file yang dapat dijumlahkan dalam direktori saat ini.
Overload
EnumerateFiles() |
Mengembalikan kumpulan informasi file yang dapat dijumlahkan dalam direktori saat ini. |
EnumerateFiles(String) |
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian. |
EnumerateFiles(String, EnumerationOptions) |
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian dan opsi enumerasi yang ditentukan. |
EnumerateFiles(String, SearchOption) |
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian tertentu dan opsi subdirektori pencarian. |
EnumerateFiles()
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
Mengembalikan kumpulan informasi file yang dapat dijumlahkan dalam direktori saat ini.
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)
Mengembalikan
Kumpulan file yang dapat dijumlahkan di direktori saat ini.
Pengecualian
Jalur yang dienkapsulasi dalam DirectoryInfo objek tidak valid (misalnya, berada pada drive yang tidak dipetakan).
Pemanggil tidak memiliki izin yang diperlukan.
Contoh
Contoh berikut menghitung file di bawah direktori tertentu dan menggunakan kueri LINQ untuk mengembalikan nama semua file yang dibuat sebelum 2009 dengan memeriksa nilai CreationTimeUtc properti .
Jika Anda hanya memerlukan nama file, gunakan kelas statis Directory untuk performa yang lebih baik. Misalnya, lihat Directory.EnumerateFiles(String) metode .
// 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
Contoh berikut menunjukkan cara menghitung file dalam direktori dengan menggunakan opsi pencarian yang berbeda. Contohnya mengasumsikan direktori yang memiliki file bernama log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, dan subdirektori yang memiliki file bernama 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 . . .
Keterangan
Metode EnumerateFiles dan GetFiles berbeda sebagai berikut:
Saat Anda menggunakan EnumerateFiles, Anda dapat mulai menghitung koleksi FileInfo objek sebelum seluruh koleksi dikembalikan.
Saat Anda menggunakan GetFiles, Anda harus menunggu seluruh array FileInfo objek dikembalikan sebelum Anda dapat mengakses array.
Oleh karena itu, ketika Anda bekerja dengan banyak file dan direktori, EnumerateFiles bisa lebih efisien.
Metode ini telah mengisi nilai properti berikut FileInfo :
Koleksi yang dikembalikan tidak di-cache; setiap panggilan ke GetEnumerator metode pada koleksi akan memulai enumerasi baru.
Berlaku untuk
EnumerateFiles(String)
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian.
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)
Parameter
- searchPattern
- String
String pencarian yang cocok dengan nama file. Parameter ini dapat berisi kombinasi jalur harfiah yang valid dan karakter kartubebas (* dan ?), tetapi tidak mendukung ekspresi reguler.
Mengembalikan
Kumpulan file yang dapat dijumlahkan yang cocok searchPattern
dengan .
Pengecualian
searchPattern
adalah null
.
Jalur yang dienkapsulasi dalam DirectoryInfo objek tidak valid, (misalnya, ada di drive yang tidak dipetakan).
Pemanggil tidak memiliki izin yang diperlukan.
Contoh
Contoh berikut menunjukkan cara menghitung file dalam direktori dengan menggunakan opsi pencarian yang berbeda. Contohnya mengasumsikan direktori yang memiliki file bernama log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, dan subdirektori yang memiliki file bernama 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 . . .
Keterangan
searchPattern
dapat berupa kombinasi karakter harfiah dan kartubebas, tetapi tidak mendukung ekspresi reguler. Penentu kartubebas berikut diizinkan di searchPattern
.
Penentu kartubebas | Cocok |
---|---|
* (tanda bintang) | Nol karakter atau lebih dalam posisi tersebut. |
? (tanda tanya) | Nol atau satu karakter dalam posisi tersebut. |
Karakter selain kartubebas adalah karakter harfiah. Misalnya, string "*t" mencari semua nama yang diakhir dengan huruf "t". ". String searchPattern
"s*" mencari semua nama di path
awal dengan huruf "s".
Metode EnumerateFiles dan GetFiles berbeda sebagai berikut:
Saat Anda menggunakan EnumerateFiles, Anda dapat mulai menghitung koleksi FileInfo objek sebelum seluruh koleksi dikembalikan.
Saat Anda menggunakan GetFiles, Anda harus menunggu seluruh array FileInfo objek dikembalikan sebelum Anda dapat mengakses array.
Oleh karena itu, ketika Anda bekerja dengan banyak file dan direktori, EnumerateFiles bisa lebih efisien.
Metode ini telah mengisi nilai properti berikut FileInfo :
Koleksi yang dikembalikan tidak di-cache; setiap panggilan ke GetEnumerator metode pada koleksi akan memulai enumerasi baru.
Berlaku untuk
EnumerateFiles(String, EnumerationOptions)
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian dan opsi enumerasi yang ditentukan.
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)
Parameter
- searchPattern
- String
String pencarian yang cocok dengan nama file. Parameter ini dapat berisi kombinasi jalur harfiah yang valid dan karakter kartubebas (* dan ?), tetapi tidak mendukung ekspresi reguler.
- enumerationOptions
- EnumerationOptions
Objek yang menjelaskan konfigurasi pencarian dan enumerasi untuk digunakan.
Mengembalikan
Kumpulan file yang dapat dijumlahkan yang cocok searchPattern
dan enumerationOptions
.
Pengecualian
searchPattern
adalah null
.
Jalur yang dienkapsulasi dalam DirectoryInfo objek tidak valid, (misalnya, ada di drive yang tidak dipetakan).
Pemanggil tidak memiliki izin yang diperlukan.
Keterangan
searchPattern
dapat berupa kombinasi karakter harfiah dan kartubebas, tetapi tidak mendukung ekspresi reguler. Penentu kartubebas berikut diizinkan di searchPattern
.
Penentu kartubebas | Cocok |
---|---|
* (tanda bintang) | Nol karakter atau lebih dalam posisi tersebut. |
? (tanda tanya) | Nol atau satu karakter dalam posisi tersebut. |
Karakter selain kartubebas adalah karakter harfiah. Misalnya, string "*t" mencari semua nama yang diakhir dengan huruf "t". ". String searchPattern
"s*" mencari semua nama di path
awal dengan huruf "s".
Metode EnumerateFiles dan GetFiles berbeda sebagai berikut:
Saat Anda menggunakan EnumerateFiles, Anda dapat mulai menghitung koleksi FileInfo objek sebelum seluruh koleksi dikembalikan.
Saat Anda menggunakan GetFiles, Anda harus menunggu seluruh array FileInfo objek dikembalikan sebelum Anda dapat mengakses array.
Oleh karena itu, ketika Anda bekerja dengan banyak file dan direktori, EnumerateFiles bisa lebih efisien.
Metode ini telah mengisi nilai properti berikut FileInfo :
Koleksi yang dikembalikan tidak di-cache; setiap panggilan ke GetEnumerator metode pada koleksi akan memulai enumerasi baru.
Berlaku untuk
EnumerateFiles(String, SearchOption)
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
- Sumber:
- DirectoryInfo.cs
Mengembalikan kumpulan informasi file yang dapat dijumlahkan yang cocok dengan pola pencarian tertentu dan opsi subdirektori pencarian.
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)
Parameter
- searchPattern
- String
String pencarian yang cocok dengan nama file. Parameter ini dapat berisi kombinasi jalur harfiah yang valid dan karakter kartubebas (* dan ?), tetapi tidak mendukung ekspresi reguler.
- searchOption
- SearchOption
Salah satu nilai enumerasi yang menentukan apakah operasi pencarian hanya boleh menyertakan direktori saat ini atau semua subdirektori. Nilai defaultnya adalah TopDirectoryOnly.
Mengembalikan
Kumpulan file yang dapat dijumlahkan yang cocok searchPattern
dan searchOption
.
Pengecualian
searchPattern
adalah null
.
searchOption
bukan nilai yang valid SearchOption .
Jalur yang dienkapsulasi dalam DirectoryInfo objek tidak valid (misalnya, berada pada drive yang tidak dipetakan).
Pemanggil tidak memiliki izin yang diperlukan.
Contoh
Contoh berikut menunjukkan cara menghitung file dalam direktori dengan menggunakan opsi pencarian yang berbeda. Contohnya mengasumsikan direktori yang memiliki file bernama log1.txt, log2.txt, test1.txt, test2.txt, test3.txt, dan subdirektori yang memiliki file bernama 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 . . .
Keterangan
searchPattern
dapat berupa kombinasi karakter harfiah dan kartubebas, tetapi tidak mendukung ekspresi reguler. Penentu kartubebas berikut diizinkan di searchPattern
.
Penentu kartubebas | Cocok |
---|---|
* (tanda bintang) | Nol karakter atau lebih dalam posisi tersebut. |
? (tanda tanya) | Nol atau satu karakter dalam posisi tersebut. |
Karakter selain kartubebas adalah karakter harfiah. Misalnya, string "*t" mencari semua nama yang diakhir dengan huruf "t". ". String searchPattern
"s*" mencari semua nama di path
awal dengan huruf "s".
Metode EnumerateFiles dan GetFiles berbeda sebagai berikut:
Saat Anda menggunakan EnumerateFiles, Anda dapat mulai menghitung koleksi FileInfo objek sebelum seluruh koleksi dikembalikan.
Saat Anda menggunakan GetFiles, Anda harus menunggu seluruh array FileInfo objek dikembalikan sebelum Anda dapat mengakses array.
Oleh karena itu, ketika Anda bekerja dengan banyak file dan direktori, EnumerateFiles bisa lebih efisien.
Metode ini telah mengisi nilai properti berikut FileInfo :
Koleksi yang dikembalikan tidak di-cache; setiap panggilan ke GetEnumerator metode pada koleksi akan memulai enumerasi baru.