18

我有一个非常快速的问题。我的程序实际上会下载一个 zip 文件,然后将其解压缩到他们的桌面上。但我需要一个卸载功能,它基本上是删除多个文件夹并包含文件。我怎样才能在 vb.net 中做到这一点?

4

4 回答 4

41

如果您的所有文件夹都包含在一个文件夹中,那么它应该非常简单。

Dim path As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\YOURPATH"
System.IO.Directory.Delete(path, True)

这将删除您的根目录,以及它下面的所有目录和文件。如果您的文件和目录不都在一个根目录中,例如示例中的“YOURPATH”,您可以多次调用它。这将使您不必单独删除每个文件。

于 2010-02-11T03:42:05.447 回答
3

.NET IO 单元有两个命令可以让你做到这一点:

System.IO.Directory.GetDirectories("C:\\Program Files\\Your Directory\\*.*");
System.IO.Directory.GetFiles("C:\\Program Files\\Your Directory\\*.*");

我会编写一个获取目录名称并使用“GetFiles”例程获取所有文件并在 foreach 循环中使用 System.IO.File.Delete(path) 删除它们的方法。然后,对 GetDirectories() 命令递归调用函数的结果运行 foreach 循环。

更新:Steve Danner 指出 System.IO.Directory 命名空间有一个 Delete 方法,所以你不需要经历我在这里讨论的循环。 他的回答是正确的,应该投赞成票。 在这一点上,我的好奇心更多(尽管感谢给我投票的人;0)。

于 2010-02-11T01:46:55.717 回答
0

您正在寻找 DirectoryInfo,像这样使用它:

Dim di As New IO.DirectoryInfo(path)
di.Delete(True)
于 2016-09-11T00:48:43.217 回答
-3
Dim path As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\YOURPATH"
System.IO.Directory.Delete(path, True)
于 2011-07-22T12:14:27.467 回答