方法: 特定のパターンに一致するサブディレクトリを検索する (Visual Basic)

GetDirectories メソッドは、ディレクトリ内のサブディレクトリのパス名を表す文字列の読み取り専用のコレクションを返します。wildCards パラメーターを使用して、特定のパターンを指定できます。サブディレクトリの内容を検索対象に含めるには、searchType パラメーターを SearchOption.SearchAllSubDirectories に設定します。

指定したパターンに一致するディレクトリが見つからなかった場合は、空のコレクションが戻ります。

特定のパターンに一致するサブディレクトリを検索するには

  • GetDirectories メソッドを使用して、検索するディレクトリの名前およびパスを指定します。次の例では、ディレクトリ構造内のディレクトリのうちで、名前に "Logs" という単語を含むものをすべて取得し、ListBox1 に追加します。

    For Each foundDirectory As String In
           My.Computer.FileSystem.GetDirectories(
               My.Computer.FileSystem.SpecialDirectories.MyDocuments,
               FileIO.SearchOption.SearchTopLevelOnly,
               "*Logs*")
    
        ListBox1.Items.Add(foundDirectory)
    Next
    

信頼性の高いプログラミング

次の条件を満たす場合は、例外が発生する可能性があります。

  • パスが無効な場合。次のいずれかの理由が考えられる。1) 長さが 0 の文字列である、2) 空白だけが含まれている、3) 無効な文字が含まれている、4) デバイス パスである (先頭が \\.\) (ArgumentException).

  • パスが Nothing であるため、有効でない (ArgumentNullException)。

  • 指定したワイルドカード文字の中に、Nothing、空の文字列、または空白のみが含まれている (ArgumentNullException)。

  • directory が存在しない (DirectoryNotFoundException)。

  • directory は既存のファイルである (IOException)。

  • パスがシステムで定義されている最大長を超えている (PathTooLongException)。

  • パス内のファイル名またはフォルダー名にコロン (:) が含まれているか、または形式が無効である (NotSupportedException)

  • ユーザーがパスを参照するのに必要なアクセス許可がない (SecurityException)

  • ユーザーに必要なアクセス許可がない (UnauthorizedAccessException)。

参照

処理手順

方法: 特定のパターンに一致するファイルを検索する (Visual Basic)

関連項目

GetDirectories