SearchOption Énumération

Définition

Spécifie si des recherches doivent être effectuées dans le répertoire actif, ou dans le répertoire actif et tous les sous-répertoires.Specifies whether to search the current directory, or the current directory and all subdirectories.

public enum class SearchOption
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum SearchOption
type SearchOption = 
Public Enum SearchOption
Héritage
SearchOption
Attributs

Champs

AllDirectories 1

Inclut le répertoire actif et tous ses sous-répertoires dans une opération de recherche.Includes the current directory and all its subdirectories in a search operation. Cette option inclut des points d’analyse, tels que des lecteurs montés et des liens symboliques dans la recherche.This option includes reparse points such as mounted drives and symbolic links in the search.

TopDirectoryOnly 0

Inclut uniquement le répertoire actif dans une opération de recherche.Includes only the current directory in a search operation.

Exemples

L’exemple suivant répertorie tous les répertoires et fichiers qui commencent par la lettre « c », comme dans « c :\».The following example lists all the directories and files that begin with the letter "c", as in "c:\". Dans cet exemple, TopDirectoryOnly est utilisé pour spécifier que la recherche doit porter uniquement sur le répertoire de niveau supérieur.In this example, TopDirectoryOnly is used to specify that only the top-level directory should be searched.

using namespace System;
using namespace System::IO;

ref class App
{
public:
    static void Main()
    {
        // Specify the directory you want to manipulate.
        String^ path = "c:\\";
        String^ searchPattern = "c*";

        DirectoryInfo^ di = gcnew DirectoryInfo(path);
        array<DirectoryInfo^>^ directories =
            di->GetDirectories(searchPattern, SearchOption::TopDirectoryOnly);

        array<FileInfo^>^ files =
            di->GetFiles(searchPattern, SearchOption::TopDirectoryOnly);

        Console::WriteLine(
            "Directories that begin with the letter \"c\" in {0}", path);
        for each (DirectoryInfo^ dir in directories)
        {
            Console::WriteLine(
                "{0,-25} {1,25}", dir->FullName, dir->LastWriteTime);
        }

        Console::WriteLine();
        Console::WriteLine(
            "Files that begin with the letter \"c\" in {0}", path);
        for each (FileInfo^ file in files)
        {
            Console::WriteLine(
                "{0,-25} {1,25}", file->Name, file->LastWriteTime);
        }
    } // Main()
}; // App()

int main()
{
    App::Main();
}
using System;
using System.IO;

class App
{
    public static void Main()
    {
        // Specify the directory you want to manipulate.
        string path = @"c:\";
        string searchPattern = "c*";

        DirectoryInfo di = new DirectoryInfo(path);
        DirectoryInfo[] directories = 
            di.GetDirectories(searchPattern, SearchOption.TopDirectoryOnly);

        FileInfo[] files = 
            di.GetFiles(searchPattern, SearchOption.TopDirectoryOnly);

        Console.WriteLine(
            "Directories that begin with the letter \"c\" in {0}", path);
        foreach (DirectoryInfo dir in directories)
        {
            Console.WriteLine(
                "{0,-25} {1,25}", dir.FullName, dir.LastWriteTime);
        }

        Console.WriteLine();
        Console.WriteLine(
            "Files that begin with the letter \"c\" in {0}", path);
        foreach (FileInfo file in files)
        {
            Console.WriteLine(
                "{0,-25} {1,25}", file.Name, file.LastWriteTime);
        }
    } // Main()
} // App()
Imports System.IO

Class App
    Public Shared Sub Main()
        ' Specify the directory you want to manipulate.
        Dim path As String = "c:\\"
        Dim searchPattern As String = "c*"

        Dim di As DirectoryInfo = New DirectoryInfo(path)
        Dim directories() As DirectoryInfo = _
            di.GetDirectories(searchPattern, SearchOption.TopDirectoryOnly)

        Dim files() As FileInfo = _
            di.GetFiles(searchPattern, SearchOption.TopDirectoryOnly)

        Console.WriteLine( _
            "Directories that begin with the letter 'c' in {0}", path)
        Dim dir As DirectoryInfo
        For Each dir In directories
            Console.WriteLine( _
                "{0,-25} {1,25}", dir.FullName, dir.LastWriteTime)
        Next dir

        Console.WriteLine()
        Console.WriteLine( _
            "Files that begin with the letter 'c' in {0}", path)
        Dim file As FileInfo
        For Each file In files
            Console.WriteLine( _
                "{0,-25} {1,25}", file.Name, file.LastWriteTime)
        Next file
    End Sub
End Class

Remarques

Si vous choisissez AllDirectories dans votre recherche et que la structure de répertoire contient un lien qui crée une boucle, l’opération de recherche entre dans une boucle infinie.If you choose AllDirectories in your search and the directory structure contains a link that creates a loop, the search operation enters an infinite loop.

S’applique à