方法 : Visual Basic でディレクトリにあるファイルのコレクションを取得する

更新 : 2007 年 11 月

My.Computer.FileSystem.GetFiles メソッドは、ディレクトリ内に格納されている各ファイルの名前を表す文字列の読み取り専用のコレクションを返します。wildCards パラメータを使用して、特定のパターンを指定できます。サブディレクトリを検索対象に含めるには、searchType パラメータを SearchOption.SearchAllSubDirectories に設定します。

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

ディレクトリにあるファイルのリストを取得するには

  • GetFiles メソッドを使用して、検索するディレクトリの名前およびパスを指定します。次の例では、ディレクトリ内のすべてのファイルを取得し、 ListBox1 に追加します。

    For Each foundFile As String In My.Computer.FileSystem.GetFiles _
    (My.Computer.FileSystem.SpecialDirectories.MyDocuments)
        listBox1.Items.Add(foundFile)
    Next
    

    このコードの例は、IntelliSense コード スニペットとしても利用できます。コード スニペット ピッカーでは、コード例は [ファイル システム - ドライブ、フォルダ、およびファイルの処理] にあります。詳細については、「方法 : コードにスニペットを挿入する (Visual Basic)」を参照してください。

堅牢性の高いプログラム

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

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

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

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

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

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

  • パス内のファイル名またはディレクトリ名にコロン (:) が含まれているか、または形式が無効である (NotSupportedException)。

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

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

参照

処理手順

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

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

参照

My.Computer.FileSystem.GetFiles メソッド