删除包含文件的文件夹时遇到问题

本文关键字:遇到 问题 文件夹 包含 文件 删除 | 更新日期: 2023-09-27 17:55:22

这应该很简单,但我不确定出了什么问题。我正在尝试使用 File.Delete 删除文件夹中的所有文件。

这是我到目前为止所拥有的:

DirectoryInfo ImageFolder = new DirectoryInfo(Program.FolderPath + @"'Images");
foreach (var File in ImageFolder.GetFiles())
{
    File.Delete(File.FullName);
}

然后是".删除"变为下划线,并表示方法删除没有重载需要 1 个参数。

任何帮助,不胜感激。

删除包含文件的文件夹时遇到问题

你所看到的称为命名空间歧义。

你自己的代码或引用 DLL 中,你可能在一个名为 File 的类中具有一个名为 Delete 的方法,该方法不支持单个字符串参数。

要解决此问题,请使用 System.IO 完全限定 File.Delete 文件,例如:

System.IO.File.Delete

要删除充满文件的文件夹,请使用:

Directory.Delete(string directoryName, bool recursive);

https://msdn.microsoft.com/en-us/library/fxeahc5f(v=vs.110).aspx
或者从上面的代码中,使用:

DirectoryInfo ImageFolder = new DirectoryInfo(Program.FolderPath + @"'Images");
foreach (var fileInfo in ImageFolder.GetFiles())
{
    fileInfo.Delete(); //this is FileInfo.Delete
    // or
    // File.Delete(fileInfo.FullName);
    // dont use reserve "File" as your variable name
}

请记住,您正在调用文件信息,而不是文件

您必须更改变量的命名:

DirectoryInfo ImageFolder = new DirectoryInfo(Program.FolderPath + @"'Images");
foreach (var file in ImageFolder.GetFiles())
{
    File.Delete(file.FullName);
}