「VB.NET」指定フォルダのサブフォルダをすべて取得する

書式
1.DirectoryInfo クラス
Public NotInheritable Class DirectoryInfo Inherits FileSystemInfo
ディレクトリとサブディレクトリを作成、削除、および列挙するためのインスタンス メソッドを公開します。
2.GetDirectories(String, SearchOption)
現在の DirectoryInfo 内にある、指定した検索条件に一致し、サブディレクトリを検索するかどうかを決定する値を持つディレクトリの配列を返します。
3.SearchOption列挙型
フィールド AllDirectories 検索操作に現在のディレクトリとすべてのサブディレクトリを含めます。

説明
テキストボックス名 lstDir
ボタン名 btnShow

使用例

Imports System.IO

Public Class Form1
    Private Sub btnShow_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnShow.Click

        Dim cft As New DirectoryInfo("c:\data2")
        ' c:data2のサブフォルダを全て取得
        Dim subAllFolders As DirectoryInfo() = cft.GetDirectories("*", SearchOption.AllDirectories)

        ' For Eachでサブフォルダをループ
        For Each subfolder As DirectoryInfo In subAllFolders
            'リストボックスで結果を表示
            lstDir.Items.Add(subfolder.FullName)
        Next

    End Sub
End Class

実行結果

ボタン「btnShow」を押すと、リストボックス「lstDir」に全てのサブフォルダを表示します
c:\data2\11
c:\data\22

 

VB.net

Posted by arkgame