ファイル関連:サブフォルダも含むフォルダ内のファイル一覧を取得(System.IO.Directory.GetFiles)VB2008でサブフォルダも含む指定フォルダの全ファイル名を取得する実行例サンプルです。ファイル関連へサブフォルダも含む指定フォルダの全ファイル名を取得するには、System.IO.Directory.GetFiles(フォルダ名、ファイルのフィルタ、IO.SearchOption.AllDirectories) を使用します。 例えば、System.IO.Directory.GetFiles("c:\"、"*.xls"、IO.SearchOption.AllDirectories) とすると、Cドライブのサブフォルダも含む全Excelファイルを取得します。 System.IO.Directory.GetFiles(フォルダ名、ファイルのフィルタ、IO.SearchOption.TopDirectoryOnly) とすると指定フォルダのみになります。 使用すると文字配列が返りますので、Forでループし、Items.Addでリストボックスに追加しています。 ■実行画面 「サブフォルダも含むファイル一覧」ボタンをクリックすると、フォルダ選択ダイアログが開きます。 選択したサブフォルダも含むフォルダ内のファイル一覧 ■実行コード Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim path As String Dim fbd As New FolderBrowserDialog Dim fl As String() Dim i As Integer path = "" 'フォルダ選択ダイアログを開く fbd.Description = "フォルダ選択" fbd.RootFolder = System.Environment.SpecialFolder.MyComputer If fbd.ShowDialog() = DialogResult.OK Then path = fbd.SelectedPath End If fbd.Dispose() If path <> "" Then 'サブフォルダも含むフォルダ内の全ファイル名を取得 fl = System.IO.Directory.GetFiles(path, "*", IO.SearchOption.AllDirectories) 'リストボックスをクリア ListBox1.Items.Clear() 'リストボックスに追加 For i = 0 To fl.Length - 1 ListBox1.Items.Add(fl(i)) Next End If End Sub End Class Visual Basic 2008 Express Edition実践入門 |