【发布时间】:2012-04-01 00:47:48
【问题描述】:
我正在尝试删除根文件夹中的所有文件和文件夹,但由于某些文件超过 256 或其他限制,我的程序不断崩溃。
我需要做的是转到最后一个文件夹,删除所有文件,然后删除该文件夹,然后一直到根文件夹,然后将其删除。
我不知道如何做到这一点,请问有人可以提供一种简单的方法吗?
非常感谢您的帮助
我正在使用 C#, 代码是:
private void RemoveDirectory(DirectoryInfo directory)
{
RemoveReadOnly(directory);
directory.Delete(true);
bool directoryExists = true;
while (directoryExists)
directoryExists = Directory.Exists(directory.FullName);
SendProgressMessage(string.Format("Removed {0}", directory.FullName));
}
【问题讨论】:
-
您使用的代码是什么以及您遇到的确切错误?
-
发布您的代码,发布异常详细信息,发布我们可以查看的内容,以便我们开始提供帮助。见Writing the perfect question。
-
@Robar: 不,这是类似的stackoverflow.com/q/2223007/284240
-
SamWrighton:这可能是一个无限循环
while (directoryExists)directoryExists = Directory.Exists(directory.FullName);,因为Directory.Exists不会改变任何东西。
标签: c# file recursion directory delete-file