DirectoryInfo.GetFiles 方法

定義

從目前的目錄傳回檔案清單。

多載

GetFiles(String, EnumerationOptions)

傳回目前目錄中符合所指定搜尋模式和列舉選項的檔案清單。

GetFiles(String, SearchOption)

從目前目錄傳回符合指定搜尋模式的檔案清單,並使用值來判斷是否搜尋子目錄。

GetFiles()

從目前的目錄傳回檔案清單。

GetFiles(String)

從目前目錄傳回符合指定之搜尋模式的檔案清單。

GetFiles(String, EnumerationOptions)

來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs

傳回目前目錄中符合所指定搜尋模式和列舉選項的檔案清單。

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

物件,描述要使用的搜尋和列舉組態。

傳回

符合 searchPatternenumerationOptions 的強型別 FileInfo 物件陣列。

例外狀況

.NET Framework和 2.1 之前的 .NET Core 版本: searchPattern 包含 方法所 GetInvalidPathChars() 定義的一或多個無效字元。

searchPatternnull

路徑無效 (例如,它位於未對應的磁碟機上)。

呼叫端沒有必要的權限。

備註

searchPattern 可以是常值和萬用字元的組合,但不支援正則運算式。 在 中 searchPattern 允許下列萬用字元規範。

萬用字元規範 相符項
* (星號) 該位置中的零或多個字元。
? (問號) 該位置中的零或一個字元。

萬用字元以外的字元是常值字元。 例如,字串 「*t」 會搜尋以字母 「t」 結尾的所有名稱。 字串 searchPattern 「s*」 會搜尋以字母 「s」 開頭的所有名稱 path

EnumerateFilesGetFiles 方法不同,如下所示:

  • 當您使用 EnumerateFiles 時,可以在傳回整個集合之前,開始列舉 物件的集合 FileInfo

  • 當您使用 GetFiles 時,必須先等候傳回整個物件的陣列 FileInfo ,才能存取陣列。

因此,當您使用許多檔案和目錄時, EnumerateFiles 可能會更有效率。

如果 中 DirectoryInfo 沒有檔案,這個方法會傳回空陣列。

參數中 searchPattern 允許下列萬用字元規範。

萬用字元 描述
* 零或多個字元。
? 完全為零或一個字元。

不保證傳回檔案名的順序;如果需要特定排序次序,請使用 Sort 方法。

允許使用萬用字元。 例如, searchPattern 字串 「*.txt」 會搜尋副檔名為 「txt」 的所有檔案名。 字串 searchPattern 「s*」 會搜尋以字母 「s」 開頭的所有檔案名。 如果沒有檔案,或沒有符合 searchPattern 中字串的 DirectoryInfo 檔案,這個方法會傳回空陣列。

注意

例如,在 (中使用 searchPattern 星號萬用字元時,「*.txt」) ,比對行為會根據指定的副檔名長度而有所不同。 副檔名剛好三個字元的 會 searchPattern 傳回副檔名為三或多個字元的檔案,其中前三個字元符合 中指定的 searchPattern 副檔名。 searchPattern副檔名為 1、2 或超過三個字元的 只會傳回副檔名完全符合 中所 searchPattern 指定副檔名的檔案。 使用問號萬用字元時,這個方法只會傳回符合指定副檔名的檔案。 例如,在目錄中指定兩個檔案「file1.txt」 和 「file1.txtother」,「file?.txt」 的搜尋模式只會傳回第一個檔案,而 「file*.txt」 的搜尋模式則會傳回這兩個檔案。

注意

因為此方法會檢查檔案名格式為 8.3 和長檔名格式的檔案名,所以類似 「*1*.txt」 的搜尋模式可能會傳回非預期的檔案名。 例如,使用 「*1*.txt」 的搜尋模式會傳回 「longfilename.txt」,因為對等的 8.3 檔案名格式會是 「longf~1.txt」。

這個方法會預先填入下列 FileInfo 屬性的值:

適用於

GetFiles(String, SearchOption)

來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs

從目前目錄傳回符合指定搜尋模式的檔案清單,並使用值來判斷是否搜尋子目錄。

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和 2.1 之前的 .NET Core 版本: searchPattern 包含 方法所 GetInvalidPathChars() 定義的一或多個無效字元。

searchPatternnull

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 . . .

備註

EnumerateFilesGetFiles 方法不同,如下所示:

  • 當您使用 EnumerateFiles 時,可以在傳回整個集合之前,開始列舉 物件的集合 FileInfo

  • 當您使用 GetFiles 時,必須先等候傳回整個物件的陣列 FileInfo ,才能存取陣列。

因此,當您使用許多檔案和目錄時, EnumerateFiles 可能會更有效率。

如果 中 DirectoryInfo 沒有檔案,這個方法會傳回空陣列。

在 中 searchPattern 允許下列萬用字元規範。

萬用字元 描述
* (星號) 零或多個字元。
? (問號) 完全為零或一個字元。

不保證傳回檔案名的順序;如果需要特定排序次序,請使用 Sort 方法。

允許使用萬用字元。 例如, searchPattern 字串 「*.txt」 會搜尋副檔名為 「txt」 的所有檔案名。 字串 searchPattern 「s*」 會搜尋以字母 「s」 開頭的所有檔案名。 如果沒有檔案,或沒有符合 searchPattern 中字串的 DirectoryInfo 檔案,這個方法會傳回空陣列。

注意

例如,在 (中使用 searchPattern 星號萬用字元時,「*.txt」) ,比對行為會根據指定的副檔名長度而有所不同。 副檔名剛好三個字元的 會 searchPattern 傳回副檔名為三或多個字元的檔案,其中前三個字元符合 中指定的 searchPattern 副檔名。 searchPattern副檔名為 1、2 或超過三個字元的 只會傳回副檔名完全符合 中所 searchPattern 指定副檔名的檔案。 使用問號萬用字元時,這個方法只會傳回符合指定副檔名的檔案。 例如,在目錄中指定兩個檔案「file1.txt」 和 「file1.txtother」,「file?.txt」 的搜尋模式只會傳回第一個檔案,而 「file*.txt」 的搜尋模式則會傳回這兩個檔案。

下列清單顯示參數不同長度 searchPattern 的行為:

  • 「*.abc」 會傳回副檔名為 .abc、.abcd、.abcde、.abcdef 等的檔案。

  • 「*.abcd」 只會傳回副檔名為 .abcd 的檔案。

  • 「*.abcde」 只會傳回副檔名為 .abcde 的檔案。

  • 「*.abcdef」 只會傳回副檔名為 .abcdef 的檔案。

注意

因為此方法會檢查檔案名格式為 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()

來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs

從目前的目錄傳回檔案清單。

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 . . .

備註

EnumerateFilesGetFiles 方法會如下所示:

  • 當您使用 EnumerateFiles 時,可以在傳回整個集合之前,開始列舉 物件的集合 FileInfo

  • 當您使用 GetFiles 時,必須先等候傳回整個物件的陣列 FileInfo ,才能存取陣列。

因此,當您使用許多檔案和目錄時, EnumerateFiles 可能會更有效率。

如果 中 DirectoryInfo 沒有任何檔案,這個方法會傳回空陣列。

不保證傳回檔案名的順序;如果需要特定排序次序, Sort 請使用 方法。

這個方法會預先填入下列 FileInfo 屬性的值:

另請參閱

適用於

GetFiles(String)

來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs
來源:
DirectoryInfo.cs

從目前目錄傳回符合指定之搜尋模式的檔案清單。

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 和 2.1 之前的 .NET Core 版本: searchPattern 包含 方法所 GetInvalidPathChars() 定義的一或多個無效字元。

searchPatternnull

路徑無效 (例如,它位於未對應的磁碟機上)。

呼叫端沒有必要的權限。

範例

下列範例示範如何使用不同的搜尋選項,從目錄取得檔案清單。 此範例假設目錄具有名為 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」 結尾的所有名稱。 字串 「s*」 會 searchPattern 以字母 「s」 開頭搜尋所有名稱 path

EnumerateFilesGetFiles 方法會如下所示:

  • 當您使用 EnumerateFiles 時,可以在傳回整個集合之前,開始列舉 物件的集合 FileInfo

  • 當您使用 GetFiles 時,必須先等候傳回整個物件的陣列 FileInfo ,才能存取陣列。

因此,當您使用許多檔案和目錄時, EnumerateFiles 可能會更有效率。

如果 中 DirectoryInfo 沒有任何檔案,這個方法會傳回空陣列。

參數中 searchPattern 允許下列萬用字元規範。

萬用字元 描述
* 零或多個字元。
? 完全為零或一個字元。

不保證傳回檔案名的順序;如果需要特定排序次序, Sort 請使用 方法。

允許使用萬用字元。 例如, searchPattern 字串 「*.txt」 會搜尋副檔名為 「txt」 的所有檔案名。 字串 searchPattern 「s*」 會搜尋以字母 「s」 開頭的所有檔案名。 如果沒有檔案,或沒有符合 中 DirectoryInfo 字串的 searchPattern 檔案,這個方法會傳回空陣列。

注意

在 (中使用 searchPattern 星號萬用字元時,例如「*.txt」) ,比對行為會因指定副檔名的長度而有所不同。 副檔名為 3 個字元的 會 searchPattern 傳回副檔名為三個或多個字元的檔案,其中前三個字元符合 中指定的 searchPattern 副檔名。 searchPattern副檔名為 1、2 或超過三個字元的 只會傳回長度完全符合 中所指定副檔名的 searchPattern 檔案。 使用問號萬用字元時,此方法只會傳回符合指定副檔名的檔案。 例如,在目錄中指定兩個檔案「file1.txt」 和 「file1.txtother」,「file?.txt」 的搜尋模式只會傳回第一個檔案,而 「file*.txt」 的搜尋模式會傳回這兩個檔案。

注意

因為這個方法會檢查具有 8.3 檔案名格式和長檔名格式的檔案名,所以類似 「*1*.txt」 的搜尋模式可能會傳回非預期的檔案名。 例如,使用 「*1*.txt」 的搜尋模式會傳回 「longfilename.txt」,因為對等的 8.3 檔案名格式會是 「longf~1.txt」。

這個方法會預先填入下列 FileInfo 屬性的值:

另請參閱

適用於