|
分類:[VB.NET/VB2005 以降]
空のフォルダ削除したいのですが、下のコードですと、フォルダの階層分実行する必要がありますが、どう修正すれば良いでしょうか。
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click search_nulld("c:\temp") '空のディレクトリを削除 End Sub
'空ディレクトリを削除
Public Shared Function IsEmptyDirectory(ByVal dir As String) As Boolean If Not Directory.Exists(dir) Then ' 存在しなければ空でないとする Return False End If Try Dim entries As String() = Directory.GetFileSystemEntries(dir) Return entries.Length = 0 Catch ' アクセス権がないなどの場合は空でないとする Return False End Try End Function
Shared Sub search_nulld(ByVal path As String) '空のディレクトリを削除 If IsEmptyDirectory(path) Then Console.WriteLine(path) ' 空のディレクトリを画面表示 System.IO.Directory.Delete(path, True) 'ディレクトリ削除 Return End If Try For Each dir As String In Directory.GetDirectories(path) search_nulld(dir) Next Catch End Try End Sub
|