none
VB.NET bir klasör içindeki boş olan klasörleri silme RRS feed

  • Soru

  • Herkese merhabalar.

    bir klasör içindeki  klasörleri taratıp, içinde dosya olmayanları silmesini vb.net kodla nasıl sağlayabiliriz. Yani klasör içindeki klasörleri tarayacak ve bu klasör içindeki dosya bulunan klasörleri bırakacak, içinde dosya olmayan klasörleri ise silecek.

    ilginize şimdiden teşekkür ederim.

    9 Aralık 2018 Pazar 15:41

Tüm Yanıtlar

  • Aşağıdaki şekilde dener misiniz?
        Public Sub SearchEmptyFolder(srcFol As String)     
        Dim fso As New FileSystemObject
        Dim fld As Folder, sFld As Folder     
        Set fld = fso.GetFolder(srcFol)     
          If fld.SubFolders.Count > 0 Then
              For Each sFld In fld.SubFolders
                 If sFld.Files.Count + sFld.SubFolders.Count > 0 Then
                     SearchEmptyFolder sFld.Path
                 Else
                      fso.DeleteFolder (tFld.Path)
                 End If     
               Next
           End If     
        End Sub


    İletişim

    9 Aralık 2018 Pazar 17:43
    Moderatör
  • Public Sub DeleteEmptyFolders(Root As String)
        Dim Folder As DirectoryInfo = New DirectoryInfo(Root)
        Folder.GetDirectories().ToList().ForEach(Sub(d) If d.GetDirectories().Count > 0 Then DeleteEmptyFolders(d.FullName) Else If d.GetFiles().Count = 0 Then Directory.Delete(d.FullName))
        If Folder.GetDirectories().Count + Folder.GetFiles().Count = 0 Then Directory.Delete(Folder.FullName)
    End Sub
    
    Public Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        DeleteEmptyFolders(TextBox1.Text)
    End Sub

    Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...

    9 Aralık 2018 Pazar 20:11