DirectoryInfo.GetFiles Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Returnerar en fillista från den aktuella katalogen.
Överlagringar
| Name | Description |
|---|---|
| GetFiles(String, EnumerationOptions) |
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret och uppräkningsalternativen. |
| GetFiles(String, SearchOption) |
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret och använder ett värde för att avgöra om underkataloger ska sökas igenom. |
| GetFiles() |
Returnerar en fillista från den aktuella katalogen. |
| GetFiles(String) |
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret. |
GetFiles(String, EnumerationOptions)
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret och uppräkningsalternativen.
public:
cli::array <System::IO::FileInfo ^> ^ GetFiles(System::String ^ searchPattern, System::IO::EnumerationOptions ^ enumerationOptions);
public System.IO.FileInfo[] GetFiles(string searchPattern, System.IO.EnumerationOptions enumerationOptions);
member this.GetFiles : string * System.IO.EnumerationOptions -> System.IO.FileInfo[]
Public Function GetFiles (searchPattern As String, enumerationOptions As EnumerationOptions) As FileInfo()
Parametrar
- searchPattern
- String
Söksträngen som ska matchas mot namnen på filerna. Den här parametern kan innehålla en kombination av giltiga teckensökväg och jokertecken (* och ?), men den stöder inte reguljära uttryck.
- enumerationOptions
- EnumerationOptions
Ett objekt som beskriver den sök- och uppräkningskonfiguration som ska användas.
Returer
En matris med starkt typerade FileInfo objekt som matchar searchPattern och enumerationOptions.
Undantag
.NET Framework- och .NET Core-versioner som är äldre än 2.1: searchPattern innehåller ett eller flera ogiltiga tecken som definierats av metoden GetInvalidPathChars().
searchPattern är null.
Sökvägen är ogiltig (den finns till exempel på en ommappad enhet).
Anroparen har inte den behörighet som krävs.
Kommentarer
searchPattern kan vara en kombination av literaltecken och jokertecken, men det stöder inte reguljära uttryck. Följande jokerteckensspecificerare tillåts i searchPattern.
| Jokerteckensspecificerare | Matcher |
|---|---|
| * (asterisk) | Noll eller fler tecken i den positionen. |
| ? (frågetecken) | Noll eller ett tecken i den positionen. |
Andra tecken än jokertecknet är literaltecken. Strängen "*t" söker till exempel efter alla namn som slutar med bokstaven "t". Strängen searchPattern "s*" söker efter alla namn från path och med bokstaven "s".
Metoderna EnumerateFiles och GetFiles skiljer sig åt enligt följande:
När du använder EnumerateFileskan du börja räkna upp samlingen med FileInfo objekt innan hela samlingen returneras.
När du använder GetFilesmåste du vänta tills hela matrisen med FileInfo objekt returneras innan du kan komma åt matrisen.
Därför kan det vara mer effektivt när du arbetar med många filer och kataloger EnumerateFiles .
Om det inte finns några filer i returnerar den DirectoryInfohär metoden en tom matris.
Följande jokerteckensspecificerare tillåts i parametern searchPattern .
| Jokerkaraktär | Description |
|---|---|
| * | Noll eller fler tecken. |
| ? | Exakt noll eller ett tecken. |
Ordningen på de returnerade filnamnen garanteras inte. Sort använd metoden om en specifik sorteringsordning krävs.
Jokertecken tillåts. Strängen searchPattern "*.txt" söker till exempel efter alla filnamn med tillägget "txt". Strängen searchPattern "s*" söker efter alla filnamn som börjar med bokstaven "s". Om det inte finns några filer eller inga filer som matchar strängen searchPatternDirectoryInfoi returnerar den här metoden en tom matris.
Note
När du använder jokertecknet asterisk i en searchPattern (till exempel "*.txt"), varierar matchande beteende beroende på längden på det angivna filtillägget. A searchPattern med ett filnamnstillägg på exakt tre tecken returnerar filer med ett tillägg på tre eller fler tecken, där de tre första tecknen matchar filnamnstillägget searchPatternsom anges i . A searchPattern med filnamnstillägget ett, två eller fler än tre tecken returnerar endast filer med tillägg av exakt den längden som matchar filnamnstillägget searchPatternsom anges i . När du använder jokertecknet för frågetecknet returnerar den här metoden endast filer som matchar det angivna filtillägget. Till exempel med två filer i en katalog, "file1.txt" och "file1.txtother", ett sökmönster för "fil?.txt" returnerar endast den första filen, medan ett sökmönster med "file*.txt" returnerar båda filerna.
Note
Eftersom den här metoden söker mot filnamn med både filnamnsformatet 8.3 och det långa filnamnsformatet kan ett sökmönster som liknar "*1*.txt" returnera oväntade filnamn. Om du till exempel använder sökmönstret "*1*.txt" returneras "longfilename.txt" eftersom motsvarande filnamnsformat på 8,3 skulle vara "longf~1.txt".
Den här metoden fyller i värdena för följande FileInfo egenskaper i förväg:
Gäller för
GetFiles(String, SearchOption)
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret och använder ett värde för att avgöra om underkataloger ska sökas igenom.
public:
cli::array <System::IO::FileInfo ^> ^ GetFiles(System::String ^ searchPattern, System::IO::SearchOption searchOption);
public System.IO.FileInfo[] GetFiles(string searchPattern, System.IO.SearchOption searchOption);
member this.GetFiles : string * System.IO.SearchOption -> System.IO.FileInfo[]
Public Function GetFiles (searchPattern As String, searchOption As SearchOption) As FileInfo()
Parametrar
- searchPattern
- String
Söksträngen som ska matchas mot namnen på filerna. Den här parametern kan innehålla en kombination av giltiga teckensökväg och jokertecken (* och ?), men den stöder inte reguljära uttryck.
- searchOption
- SearchOption
Ett av uppräkningsvärdena som anger om sökåtgärden endast ska innehålla den aktuella katalogen eller alla underkataloger.
Returer
En matris av typen FileInfo.
Undantag
.NET Framework- och .NET Core-versioner som är äldre än 2.1: searchPattern innehåller ett eller flera ogiltiga tecken som definierats av metoden GetInvalidPathChars().
searchPattern är null.
searchOption är inte ett giltigt SearchOption värde.
Sökvägen är ogiltig (den finns till exempel på en ommappad enhet).
Anroparen har inte den behörighet som krävs.
Exempel
I följande exempel visas hur du hämtar en lista över filer från en katalog med hjälp av olika sökalternativ. Exemplet förutsätter en katalog med namnet log1.txt, log2.txt, test1.txt, test2.txt, test3.txtoch en underkatalog som har en fil med namnet SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\Users\tomfitz\Documents\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.GetFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.GetFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.GetFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.GetFiles("*", 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:\Users\tomfitz\Documents\ExampleDir"
printfn "No search pattern returns:"
for fi in di.GetFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.GetFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.GetFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.GetFiles("*", 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.GetFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.GetFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.GetFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.GetFiles("*", 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 . . .
Kommentarer
Metoderna EnumerateFiles och GetFiles skiljer sig åt enligt följande:
När du använder EnumerateFileskan du börja räkna upp samlingen med FileInfo objekt innan hela samlingen returneras.
När du använder GetFilesmåste du vänta tills hela matrisen med FileInfo objekt returneras innan du kan komma åt matrisen.
Därför kan det vara mer effektivt när du arbetar med många filer och kataloger EnumerateFiles .
Om det inte finns några filer i returnerar den DirectoryInfohär metoden en tom matris.
Följande jokerteckensspecificerare tillåts i searchPattern.
| Jokerkaraktär | Description |
|---|---|
| * (asterisk) | Noll eller fler tecken. |
| ? (frågetecken) | Exakt noll eller ett tecken. |
Ordningen på de returnerade filnamnen garanteras inte. Sort använd metoden om en specifik sorteringsordning krävs.
Jokertecken tillåts. Strängen searchPattern "*.txt" söker till exempel efter alla filnamn med tillägget "txt". Strängen searchPattern "s*" söker efter alla filnamn som börjar med bokstaven "s". Om det inte finns några filer eller inga filer som matchar strängen searchPatternDirectoryInfoi returnerar den här metoden en tom matris.
Note
När du använder jokertecknet asterisk i en searchPattern (till exempel "*.txt"), varierar matchande beteende beroende på längden på det angivna filtillägget. A searchPattern med ett filnamnstillägg på exakt tre tecken returnerar filer med ett tillägg på tre eller fler tecken, där de tre första tecknen matchar filnamnstillägget searchPatternsom anges i . A searchPattern med filnamnstillägget ett, två eller fler än tre tecken returnerar endast filer med tillägg av exakt den längden som matchar filnamnstillägget searchPatternsom anges i . När du använder jokertecknet för frågetecknet returnerar den här metoden endast filer som matchar det angivna filtillägget. Till exempel med två filer i en katalog, "file1.txt" och "file1.txtother", ett sökmönster för "fil?.txt" returnerar endast den första filen, medan ett sökmönster med "file*.txt" returnerar båda filerna.
Följande lista visar beteendet för olika längder för parametern searchPattern :
"*.abc" returnerar filer med en förlängning av .abc, .abcd, .abcde, .abcdef och så vidare.
"*.abcd" returnerar endast filer med tillägget .abcd.
"*.abcde" returnerar endast filer med tillägget .abcde.
"*.abcdef" returnerar endast filer med tillägget .abcdef.
Note
Eftersom den här metoden söker mot filnamn med både filnamnsformatet 8.3 och det långa filnamnsformatet kan ett sökmönster som liknar "*1*.txt" returnera oväntade filnamn. Om du till exempel använder sökmönstret "*1*.txt" returneras "longfilename.txt" eftersom motsvarande filnamnsformat på 8,3 skulle vara "longf~1.txt".
Den här metoden fyller i värdena för följande FileInfo egenskaper i förväg:
Se även
Gäller för
GetFiles()
Returnerar en fillista från den aktuella katalogen.
public:
cli::array <System::IO::FileInfo ^> ^ GetFiles();
public System.IO.FileInfo[] GetFiles();
member this.GetFiles : unit -> System.IO.FileInfo[]
Public Function GetFiles () As FileInfo()
Returer
En matris av typen FileInfo.
Undantag
Sökvägen är ogiltig, till exempel på en ommappad enhet.
Exempel
I följande exempel visas hur du hämtar en lista över filer från en katalog med hjälp av olika sökalternativ. Exemplet förutsätter en katalog med namnet log1.txt, log2.txt, test1.txt, test2.txt, test3.txtoch en underkatalog som har en fil med namnet SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\Users\tomfitz\Documents\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.GetFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.GetFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.GetFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.GetFiles("*", 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:\Users\tomfitz\Documents\ExampleDir"
printfn "No search pattern returns:"
for fi in di.GetFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.GetFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.GetFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.GetFiles("*", 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.GetFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.GetFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.GetFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.GetFiles("*", 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 . . .
Kommentarer
Metoderna EnumerateFiles och GetFiles skiljer sig åt enligt följande:
När du använder EnumerateFileskan du börja räkna upp samlingen med FileInfo objekt innan hela samlingen returneras.
När du använder GetFilesmåste du vänta tills hela matrisen med FileInfo objekt returneras innan du kan komma åt matrisen.
Därför kan det vara mer effektivt när du arbetar med många filer och kataloger EnumerateFiles .
Om det inte finns några filer i returnerar den DirectoryInfohär metoden en tom matris.
Ordningen på de returnerade filnamnen garanteras inte. Sort använd metoden om en specifik sorteringsordning krävs.
Den här metoden fyller i värdena för följande FileInfo egenskaper i förväg:
Se även
Gäller för
GetFiles(String)
Returnerar en fillista från den aktuella katalogen som matchar det angivna sökmönstret.
public:
cli::array <System::IO::FileInfo ^> ^ GetFiles(System::String ^ searchPattern);
public System.IO.FileInfo[] GetFiles(string searchPattern);
member this.GetFiles : string -> System.IO.FileInfo[]
Public Function GetFiles (searchPattern As String) As FileInfo()
Parametrar
- searchPattern
- String
Söksträngen som ska matchas mot namnen på filerna. Den här parametern kan innehålla en kombination av giltiga teckensökväg och jokertecken (* och ?), men den stöder inte reguljära uttryck.
Returer
En matris av typen FileInfo.
Undantag
.NET Framework- och .NET Core-versioner som är äldre än 2.1: searchPattern innehåller ett eller flera ogiltiga tecken som definierats av metoden GetInvalidPathChars().
searchPattern är null.
Sökvägen är ogiltig (den finns till exempel på en ommappad enhet).
Anroparen har inte den behörighet som krävs.
Exempel
I följande exempel visas hur du hämtar en lista över filer från en katalog med hjälp av olika sökalternativ. Exemplet förutsätter en katalog med namnet log1.txt, log2.txt, test1.txt, test2.txt, test3.txtoch en underkatalog som har en fil med namnet SubFile.txt.
using System;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo di = new DirectoryInfo(@"C:\Users\tomfitz\Documents\ExampleDir");
Console.WriteLine("No search pattern returns:");
foreach (var fi in di.GetFiles())
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern *2* returns:");
foreach (var fi in di.GetFiles("*2*"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern test?.txt returns:");
foreach (var fi in di.GetFiles("test?.txt"))
{
Console.WriteLine(fi.Name);
}
Console.WriteLine();
Console.WriteLine("Search pattern AllDirectories returns:");
foreach (var fi in di.GetFiles("*", 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:\Users\tomfitz\Documents\ExampleDir"
printfn "No search pattern returns:"
for fi in di.GetFiles() do
printfn $"{fi.Name}"
printfn "\nSearch pattern *2* returns:"
for fi in di.GetFiles "*2*" do
printfn $"{fi.Name}"
printfn "\nSearch pattern test?.txt returns:"
for fi in di.GetFiles "test?.txt" do
printfn $"{fi.Name}"
printfn "\nSearch pattern AllDirectories returns:"
for fi in di.GetFiles("*", 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.GetFiles()
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern *2* returns:")
For Each fi In di.GetFiles("*2*")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern test?.txt returns:")
For Each fi In di.GetFiles("test?.txt")
Console.WriteLine(fi.Name)
Next
Console.WriteLine()
Console.WriteLine("Search pattern AllDirectories returns:")
For Each fi In di.GetFiles("*", 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 . . .
Kommentarer
searchPattern kan vara en kombination av literaltecken och jokertecken, men det stöder inte reguljära uttryck. Följande jokerteckensspecificerare tillåts i searchPattern.
| Jokerteckensspecificerare | Matcher |
|---|---|
| * (asterisk) | Noll eller fler tecken i den positionen. |
| ? (frågetecken) | Noll eller ett tecken i den positionen. |
Andra tecken än jokertecknet är literaltecken. Strängen "*t" söker till exempel efter alla namn som slutar med bokstaven "t". Strängen searchPattern "s*" söker efter alla namn från path och med bokstaven "s".
Metoderna EnumerateFiles och GetFiles skiljer sig åt enligt följande:
När du använder EnumerateFileskan du börja räkna upp samlingen med FileInfo objekt innan hela samlingen returneras.
När du använder GetFilesmåste du vänta tills hela matrisen med FileInfo objekt returneras innan du kan komma åt matrisen.
Därför kan det vara mer effektivt när du arbetar med många filer och kataloger EnumerateFiles .
Om det inte finns några filer i returnerar den DirectoryInfohär metoden en tom matris.
Följande jokerteckensspecificerare tillåts i parametern searchPattern .
| Jokerkaraktär | Description |
|---|---|
| * | Noll eller fler tecken. |
| ? | Exakt noll eller ett tecken. |
Ordningen på de returnerade filnamnen garanteras inte. Sort använd metoden om en specifik sorteringsordning krävs.
Jokertecken tillåts. Strängen searchPattern "*.txt" söker till exempel efter alla filnamn med tillägget "txt". Strängen searchPattern "s*" söker efter alla filnamn som börjar med bokstaven "s". Om det inte finns några filer eller inga filer som matchar strängen searchPatternDirectoryInfoi returnerar den här metoden en tom matris.
Note
När du använder jokertecknet asterisk i en searchPattern (till exempel "*.txt"), varierar matchande beteende beroende på längden på det angivna filtillägget. A searchPattern med ett filnamnstillägg på exakt tre tecken returnerar filer med ett tillägg på tre eller fler tecken, där de tre första tecknen matchar filnamnstillägget searchPatternsom anges i . A searchPattern med filnamnstillägget ett, två eller fler än tre tecken returnerar endast filer med tillägg av exakt den längden som matchar filnamnstillägget searchPatternsom anges i . När du använder jokertecknet för frågetecknet returnerar den här metoden endast filer som matchar det angivna filtillägget. Till exempel med två filer i en katalog, "file1.txt" och "file1.txtother", ett sökmönster för "fil?.txt" returnerar endast den första filen, medan ett sökmönster med "file*.txt" returnerar båda filerna.
Note
Eftersom den här metoden söker mot filnamn med både filnamnsformatet 8.3 och det långa filnamnsformatet kan ett sökmönster som liknar "*1*.txt" returnera oväntade filnamn. Om du till exempel använder sökmönstret "*1*.txt" returneras "longfilename.txt" eftersom motsvarande filnamnsformat på 8,3 skulle vara "longf~1.txt".
Den här metoden fyller i värdena för följande FileInfo egenskaper i förväg: