6.指定フォルダー以下のサブフォルダー数を取得及びフォルダー名を列挙(35_Fld_06) (旧、SampleNo.036) |
1.指定フォルダー以下のサブフォルダー数を取得及びフォルダー名を列挙 2. 3. 4. 5. 6. |
下記プログラムコードに関する補足・注意事項 動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86 Option :[Compare Text] [Explicit On] [Infer On] [Strict On] Imports :追加なし 参照設定:追加なし その他 : : このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので) 必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい) |
1.指定フォルダー以下のサブフォルダー数を取得及びフォルダー名を列挙 |
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 'フォルダー数及びサブフォルダーのパスを取得する Dim folderBrowserDialog1 As New FolderBrowserDialog ListBox1.Items.Clear() Label1.Text = "" ListBox1.HorizontalScrollbar = True Dim folderName As String 'フォルダーの参照ダイアログを表示 If folderBrowserDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then 'フォルダー名を取得 folderName = folderBrowserDialog1.SelectedPath Else Exit Sub End If folderBrowserDialog1.Dispose() Dim di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo(folderName) 'フォルダー数及びサブフォルダーのパスを取得 Dim sumDirectory As Integer = CInt(GetSubDirectory(ListBox1, di)) Label1.Text = sumDirectory & " フォルダーありました。" End Sub Public Shared Function GetSubDirectory(ByVal lb As ListBox, _ ByVal d As System.IO.DirectoryInfo) As Integer '指定フォルダー以下のサブフォルダー数を取得する関数 'エクスプローラーのフォルダーのプロパティの全般のところで表示しているフォルダー数と同じ Dim fCount As Integer = 0 Try Dim dis As System.IO.DirectoryInfo() = d.GetDirectories() Dim di As System.IO.DirectoryInfo 'サブフォルダー数を合計する For Each di In dis lb.Items.Add(di.FullName) fCount += GetSubDirectory(lb, di) + 1 Next di Catch ex As Exception End Try Return fCount End Function 図1.上記実行結果 |
2. |
3. |
4. |
5. |
6. |
検索キーワード及びサンプルコードの別名(機能名) |
指定ディレクトリ以下のディレクトリ数を取得及びディレクトリ名を列挙 |