2015-05-11 8 views
0

Я хочу удалить подкаталог с другим подкаталогом, который содержит текстовые файлы. Код, который я использую:Как удалить подкаталог, содержащий подкаталог и текстовые файлы

Dim Nb = New DirectoryInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Student List\" & TextBox10.Text)) 
Dim Gt As String = Path.Combine(Nb.FullName) 
System.IO.File.Delete(Gt) 

Это не работает для меня. Пожалуйста, как я могу это переписать? Я использую VB 2010 Express. Заранее спасибо.

+0

возможный дубликат [удалить папки и содержащие файлы - VB.NET] (http://stackoverflow.com/questions/2241673/delete-folders-and-containing-files- В.Б-нетто) –

ответ

1

Попробуйте это:

Dim Nb = New DirectoryInfo(Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Student List\" & TextBox10.Text)) 
    Try 
     If Directory.Exists(Nb.FullName) Then 
      Dim oDirectory As New DirectoryInfo(Nb.FullName) 
      If oDirectory.GetFiles.Count > 0 Then 
       For Each oFile As FileInfo In oDirectory.GetFiles 
        oFile.Delete() 
       Next 
      End If 
      If oDirectory.GetDirectories.Count > 0 Then 
       For Each oDir As DirectoryInfo In oDirectory.GetDirectories 
        oDir.Delete(True) 
       Next 
       Nb.Delete() 
      End If 
     End If 
    Catch ex As Exception 
     MsgBox(ex.Message) 
    End Try 
1

Не использовать File.Delete(path)Directory.Delete(path, true) true означает рекурсивно удалять содержимое каталога и подкаталогов.