指定のフォルダー内のファイルをすべて列挙する (2個) (SNo.024) 1.指定のフォルダー内のファイルをすべて列挙 2.指定のフォルダー内の指定の拡張子のファイルを全て列挙する |
|
使用コントロール | Button1 Button2 ListBox1 FolderBrowserDialog1 |
その他条件 | WindowsXP(Vista) Visual Basic 2005(VB2008) |
1.指定のフォルダー内のファイルをすべて列挙
Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click '指定のフォルダー内のファイルを全て列挙する Dim FolderName As String Dim FileName As String ''フォルダーの参照ダイアログを表示 If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then ''フォルダー名を取得 FolderName = FolderBrowserDialog1.SelectedPath Else Exit Sub End If 'リストボックスをクリア ListBox1.Items.Clear() ''リストボックスに水平スクロールバーを表示 ListBox1.HorizontalScrollbar = True 'フォルダー名が取得できたら If FolderName.Length > 1 Then 'フォルダー内の全てのファイルのパスを取得 For Each FileName In System.IO.Directory.GetFiles(FolderName) '指定の拡張子のファイルだけ取得する場合 'リストボックスにファイル名を表示 ListBox1.Items.Add(System.IO.Path.GetFileName(FileName)) Next End If End Sub |
|
2.指定のフォルダー内の指定の拡張子のファイルを全て列挙する Private Sub Button2_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button2.Click '指定のフォルダー内の指定の拡張子のファイルを全て列挙する Dim FolderName As String Dim FileName As String ''フォルダーの参照ダイアログを表示 If FolderBrowserDialog1.ShowDialog() = DialogResult.OK Then ''フォルダー名を取得 FolderName = FolderBrowserDialog1.SelectedPath Else Exit Sub End If 'リストボックスをクリア ListBox1.Items.Clear() ''リストボックスに水平スクロールバーを表示 ListBox1.HorizontalScrollbar = True 'フォルダー名が取得できたら If FolderName.Length > 1 Then '指定の拡張子のファイルだけ取得する場合 For Each FileName In System.IO.Directory.GetFiles(FolderName, "*.txt") 'リストボックスにファイル名をフルパスで表示 ListBox1.Items.Add(FileName) Next End If End Sub |
|
上記の他、System.IO.DirectoryInfo を使った方法やFileSystemObject を使っても取得できます。 |