0

で新しいフォルダーを作成します%Temp%。それらは空で、どこにも使用されていません。これらの vb.net コードを使用して一時ファイルを削除します。

For Each filepath In Directory.GetFiles(TempFolderPath)
            Try
                File.Delete(filepath)
                Directory.Delete(filepath)
            Catch ex As Exception
                MessageBox.Show(ex.ToString)

            End Try
Next

どうしたの?

4

1 に答える 1

2

あなたが間違っているのは、ファイルへのパスを使用してフォルダーを削除しようとしていることです。これは機能しません。

これは私にとってはうまくいきます。これにより、指定したフォルダー内のすべてのファイルとすべてのフォルダーが削除されます。再帰的に実行されるため、すべてのファイルとフォルダーが削除されます。指定したフォルダー (この場合は %Temp%) を削除する場合は、コメント行のコメントを解除し、「directory.Delete(subfolder)」行を削除します。

Private Sub RemoveFilesAndFoldersRecursively(ByVal Folder As String)
        For Each Subfolder As String In IO.Directory.GetDirectories(Folder)
            RemoveFilesAndFoldersRecursively(Subfolder)
            IO.Directory.Delete(Subfolder)
        Next
        For Each file As String In IO.Directory.GetFiles(Folder)
            IO.File.Delete(file)
        Next
        'IO.Directory.Delete(Folder)
    End Sub
于 2012-10-22T10:58:44.710 に答える