方法 : ディレクトリに含まれているファイルの数を確認する

更新 : 2007 年 11 月

My.Computer.FileSystem.GetFiles メソッドを使用すると、指定したディレクトリに含まれている各ファイルの名前を表す文字列を、読み取り専用のコレクションとして取得できます。次に、Count プロパティを使用して、ファイルの数を確認できます。

ディレクトリに含まれているファイルの数を確認するには

  1. GetFiles メソッドを使用して、指定したディレクトリに含まれているファイルのコレクションを取得します。この例では、TestDir という名前のディレクトリに含まれているファイルを取得します。

    Dim counter As _
    System.Collections.ObjectModel.ReadOnlyCollection(Of String)
    counter = My.Computer.FileSystem.GetFiles("C:\TestDir")
    
  2. Count プロパティを使用して、コレクションに含まれているファイルの数を確認します。この例では、メッセージ ボックスに結果を表示します。

    MsgBox("number of files is " & CStr(counter.Count))
    

使用例

この例は、上のスニペットを完全な形式で表したものです。TestDir に含まれているファイル数を数え、メッセージ ボックスで報告します。

Dim counter As _
System.Collections.ObjectModel.ReadOnlyCollection(Of String)
counter = My.Computer.FileSystem.GetFiles("C:\TestDir")
MsgBox("number of files is " & CStr(counter.Count))

コードのコンパイル方法

必要な条件は次のとおりです。

  • System.Collections 名前空間のメンバに対するアクセスが必要です。コード内でメンバ名を完全修飾していない場合は、Imports ステートメントを追加します。詳細については、「Imports ステートメント (.NET 名前空間および型)」を参照してください。

  • 指定の場所に TestDir という名前のディレクトリが必要です。調べる対象のディレクトリのパスに置き換えます。

堅牢性の高いプログラム

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

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

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

  • ディレクトリが存在しないか、またはファイルである (DirectoryNotFoundException)。

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

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

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

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

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

参照

処理手順

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

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

参照

My.Computer.FileSystem.GetFiles メソッド

その他の技術情報

Visual Basic におけるファイル、ディレクトリ、およびドライブのプロパティ