DirectoryInfo.GetFiles Метод

Определение

Возвращает список файлов из текущего каталога.

Перегрузки

Имя Описание
GetFiles(String, EnumerationOptions)

Возвращает список файлов из текущего каталога, соответствующий указанному шаблону поиска и параметрам перечисления.

GetFiles(String, SearchOption)

Возвращает список файлов из текущего каталога, соответствующий заданному шаблону поиска и используя значение, чтобы определить, следует ли выполнять поиск подкаталогов.

GetFiles()

Возвращает список файлов из текущего каталога.

GetFiles(String)

Возвращает список файлов из текущего каталога, соответствующий заданному шаблону поиска.

GetFiles(String, EnumerationOptions)

Возвращает список файлов из текущего каталога, соответствующий указанному шаблону поиска и параметрам перечисления.

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()

Параметры

searchPattern
String

Строка поиска, соответствующая именам файлов. Этот параметр может содержать сочетание допустимых символов литерала и подстановочных знаков (* и ?), но не поддерживает регулярные выражения.

enumerationOptions
EnumerationOptions

Объект, описывающий конфигурацию поиска и перечисления для использования.

Возвращаемое значение

Массив строго типизированных FileInfo объектов, соответствующих searchPattern и enumerationOptions.

Исключения

Версии .NET Framework и .NET Core старше 2.1: searchPattern содержат один или несколько недопустимых символов, определенных методом GetInvalidPathChars() .

searchPattern равно null.

Путь недопустим (например, он находится на несопоставленном диске).

Вызывающий объект не имеет требуемого разрешения.

Комментарии

searchPattern может быть сочетанием символов литерала и подстановочных знаков, но не поддерживает регулярные выражения. Следующие описатели подстановочных знаков разрешены в searchPattern.

Описатель подстановочных знаков Совпадения
* (звездочка) Ноль или больше символов в этой позиции.
? (вопросительный знак) Ноль или один символ в этой позиции.

Символы, отличные от подстановочного знака, являются литеральными символами. Например, строка "*t" выполняет поиск всех имен в конце буквы "t". Строка searchPattern "s*" выполняет поиск всех имен, path начиная с буквы "s".

Методы EnumerateFiles и GetFiles отличаются следующим образом:

  • При использовании EnumerateFilesможно начать перечисление коллекции FileInfo объектов до возврата всей коллекции.

  • При использовании GetFilesнеобходимо дождаться возврата всего массива FileInfo объектов, прежде чем получить доступ к массиву.

Поэтому при работе с большим количеством файлов и каталогов EnumerateFiles может быть более эффективным.

Если в нем нет файлов DirectoryInfo, этот метод возвращает пустой массив.

В параметре разрешены searchPattern следующие описатели подстановочных знаков.

Подстановочный знак Description
* Ноль или больше знаков.
? Ровно ноль или один символ.

Порядок возвращаемых имен файлов не гарантируется; используйте метод, Sort если требуется определенный порядок сортировки.

Подстановочные символы разрешены. Например, searchPattern строка "*.txt" ищет все имена файлов с расширением txt. Строка searchPattern "s*" ищет все имена файлов, начиная с буквы "s". Если в строке нет файлов или нет файлов, которые соответствуют строке searchPatternDirectoryInfo, этот метод возвращает пустой массив.

Note

При использовании подстановочного знака звездочки в ( searchPattern например, "*.txt"), поведение сопоставления зависит от длины указанного расширения файла. С searchPattern расширением файла ровно три символа возвращает файлы с расширением трех или более символов, где первые три символа соответствуют расширению файла, указанному в файле searchPattern. С searchPattern расширением файла с одним, двумя или более трех символов возвращается только файлы с расширениями точно той длины, которая соответствует расширению файла, указанному в файле searchPattern. При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению файла. Например, учитывая два файла в каталоге, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

Note

Так как этот метод проверяет имена файлов с форматом имени файла 8.3 и форматом длинного имени файла, шаблон поиска, аналогичный "*1*.txt", может возвращать непредвиденные имена файлов. Например, использование шаблона поиска "*1*.txt" вернет "longfilename.txt", так как эквивалентный формат имени файла 8.3 будет "longf~1.txt".

Этот метод предварительно заполняет значения следующих FileInfo свойств:

Применяется к

GetFiles(String, SearchOption)

Возвращает список файлов из текущего каталога, соответствующий заданному шаблону поиска и используя значение, чтобы определить, следует ли выполнять поиск подкаталогов.

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()

Параметры

searchPattern
String

Строка поиска, соответствующая именам файлов. Этот параметр может содержать сочетание допустимых символов литерала и подстановочных знаков (* и ?), но не поддерживает регулярные выражения.

searchOption
SearchOption

Одно из значений перечисления, указывающее, должна ли операция поиска включать только текущий каталог или все подкаталоги.

Возвращаемое значение

Массив типа FileInfo.

Исключения

Версии .NET Framework и .NET Core старше 2.1: searchPattern содержат один или несколько недопустимых символов, определенных методом GetInvalidPathChars() .

searchPattern равно null.

searchOption недопустимое SearchOption значение.

Путь недопустим (например, он находится на несопоставленном диске).

Вызывающий объект не имеет требуемого разрешения.

Примеры

В следующем примере показано, как получить список файлов из каталога с помощью различных параметров поиска. В примере предполагается каталог с файлами с именем log1.txt, log2.txt, test1.txt, test2.txt, test3.txtи подкаталогом с именем 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 . . .

Комментарии

Методы EnumerateFiles и GetFiles отличаются следующим образом:

  • При использовании EnumerateFilesможно начать перечисление коллекции FileInfo объектов до возврата всей коллекции.

  • При использовании GetFilesнеобходимо дождаться возврата всего массива FileInfo объектов, прежде чем получить доступ к массиву.

Поэтому при работе с большим количеством файлов и каталогов EnumerateFiles может быть более эффективным.

Если в нем нет файлов DirectoryInfo, этот метод возвращает пустой массив.

Следующие описатели подстановочных знаков разрешены в searchPattern.

Подстановочный знак Description
* (звездочка) Ноль или больше знаков.
? (вопросительный знак) Ровно ноль или один символ.

Порядок возвращаемых имен файлов не гарантируется; используйте метод, Sort если требуется определенный порядок сортировки.

Подстановочные символы разрешены. Например, searchPattern строка "*.txt" ищет все имена файлов с расширением txt. Строка searchPattern "s*" ищет все имена файлов, начиная с буквы "s". Если в строке нет файлов или нет файлов, которые соответствуют строке searchPatternDirectoryInfo, этот метод возвращает пустой массив.

Note

При использовании подстановочного знака звездочки в ( searchPattern например, "*.txt"), поведение сопоставления зависит от длины указанного расширения файла. С searchPattern расширением файла ровно три символа возвращает файлы с расширением трех или более символов, где первые три символа соответствуют расширению файла, указанному в файле searchPattern. С searchPattern расширением файла с одним, двумя или более трех символов возвращается только файлы с расширениями точно той длины, которая соответствует расширению файла, указанному в файле searchPattern. При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению файла. Например, учитывая два файла в каталоге, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

В следующем списке показано поведение различных длин для searchPattern параметра:

  • "*.abc" возвращает файлы с расширением ABC, ABCD, ABCDE, ABCDef и т. д.

  • "*.abcd" возвращает только файлы с расширением ABCD.

  • "*.abcde" возвращает только файлы с расширением ABCDE.

  • "*.abcdef" возвращает только файлы с расширением ABCDef.

Note

Так как этот метод проверяет имена файлов с форматом имени файла 8.3 и форматом длинного имени файла, шаблон поиска, аналогичный "*1*.txt", может возвращать непредвиденные имена файлов. Например, использование шаблона поиска "*1*.txt" вернет "longfilename.txt", так как эквивалентный формат имени файла 8.3 будет "longf~1.txt".

Этот метод предварительно заполняет значения следующих FileInfo свойств:

  1. Attributes

  2. CreationTime

  3. CreationTimeUtc

  4. LastAccessTime

  5. LastAccessTimeUtc

  6. LastWriteTime

  7. LastWriteTimeUtc

  8. Length

См. также раздел

Применяется к

GetFiles()

Возвращает список файлов из текущего каталога.

public:
 cli::array <System::IO::FileInfo ^> ^ GetFiles();
public System.IO.FileInfo[] GetFiles();
member this.GetFiles : unit -> System.IO.FileInfo[]
Public Function GetFiles () As FileInfo()

Возвращаемое значение

Массив типа FileInfo.

Исключения

Путь недопустим, например на несопоставленном диске.

Примеры

В следующем примере показано, как получить список файлов из каталога с помощью различных параметров поиска. В примере предполагается каталог с файлами с именем log1.txt, log2.txt, test1.txt, test2.txt, test3.txtи подкаталогом с именем 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 . . .

Комментарии

Методы EnumerateFiles и GetFiles отличаются следующим образом:

  • При использовании EnumerateFilesможно начать перечисление коллекции FileInfo объектов до возврата всей коллекции.

  • При использовании GetFilesнеобходимо дождаться возврата всего массива FileInfo объектов, прежде чем получить доступ к массиву.

Поэтому при работе с большим количеством файлов и каталогов EnumerateFiles может быть более эффективным.

Если в нем нет файлов DirectoryInfo, этот метод возвращает пустой массив.

Порядок возвращаемых имен файлов не гарантируется; используйте метод, Sort если требуется определенный порядок сортировки.

Этот метод предварительно заполняет значения следующих FileInfo свойств:

См. также раздел

Применяется к

GetFiles(String)

Возвращает список файлов из текущего каталога, соответствующий заданному шаблону поиска.

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()

Параметры

searchPattern
String

Строка поиска, соответствующая именам файлов. Этот параметр может содержать сочетание допустимых символов литерала и подстановочных знаков (* и ?), но не поддерживает регулярные выражения.

Возвращаемое значение

Массив типа FileInfo.

Исключения

Версии .NET Framework и .NET Core старше 2.1: searchPattern содержат один или несколько недопустимых символов, определенных методом GetInvalidPathChars() .

searchPattern равно null.

Путь недопустим (например, он находится на несопоставленном диске).

Вызывающий объект не имеет требуемого разрешения.

Примеры

В следующем примере показано, как получить список файлов из каталога с помощью различных параметров поиска. В примере предполагается каталог с файлами с именем log1.txt, log2.txt, test1.txt, test2.txt, test3.txtи подкаталогом с именем 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 . . .

Комментарии

searchPattern может быть сочетанием символов литерала и подстановочных знаков, но не поддерживает регулярные выражения. Следующие описатели подстановочных знаков разрешены в searchPattern.

Описатель подстановочных знаков Совпадения
* (звездочка) Ноль или больше символов в этой позиции.
? (вопросительный знак) Ноль или один символ в этой позиции.

Символы, отличные от подстановочного знака, являются литеральными символами. Например, строка "*t" выполняет поиск всех имен в конце буквы "t". Строка searchPattern "s*" выполняет поиск всех имен, path начиная с буквы "s".

Методы EnumerateFiles и GetFiles отличаются следующим образом:

  • При использовании EnumerateFilesможно начать перечисление коллекции FileInfo объектов до возврата всей коллекции.

  • При использовании GetFilesнеобходимо дождаться возврата всего массива FileInfo объектов, прежде чем получить доступ к массиву.

Поэтому при работе с большим количеством файлов и каталогов EnumerateFiles может быть более эффективным.

Если в нем нет файлов DirectoryInfo, этот метод возвращает пустой массив.

В параметре разрешены searchPattern следующие описатели подстановочных знаков.

Подстановочный знак Description
* Ноль или больше знаков.
? Ровно ноль или один символ.

Порядок возвращаемых имен файлов не гарантируется; используйте метод, Sort если требуется определенный порядок сортировки.

Подстановочные символы разрешены. Например, searchPattern строка "*.txt" ищет все имена файлов с расширением txt. Строка searchPattern "s*" ищет все имена файлов, начиная с буквы "s". Если в строке нет файлов или нет файлов, которые соответствуют строке searchPatternDirectoryInfo, этот метод возвращает пустой массив.

Note

При использовании подстановочного знака звездочки в ( searchPattern например, "*.txt"), поведение сопоставления зависит от длины указанного расширения файла. С searchPattern расширением файла ровно три символа возвращает файлы с расширением трех или более символов, где первые три символа соответствуют расширению файла, указанному в файле searchPattern. С searchPattern расширением файла с одним, двумя или более трех символов возвращается только файлы с расширениями точно той длины, которая соответствует расширению файла, указанному в файле searchPattern. При использовании подстановочного знака вопросительного знака этот метод возвращает только файлы, соответствующие указанному расширению файла. Например, учитывая два файла в каталоге, "file1.txt" и "file1.txtother", шаблон поиска "file?.txt" возвращает только первый файл, а шаблон поиска "file*.txt" возвращает оба файла.

Note

Так как этот метод проверяет имена файлов с форматом имени файла 8.3 и форматом длинного имени файла, шаблон поиска, аналогичный "*1*.txt", может возвращать непредвиденные имена файлов. Например, использование шаблона поиска "*1*.txt" вернет "longfilename.txt", так как эквивалентный формат имени файла 8.3 будет "longf~1.txt".

Этот метод предварительно заполняет значения следующих FileInfo свойств:

См. также раздел

Применяется к