删除Web目录中的所有文件

时间:2014-03-04 16:05:27

标签: c# asp.net

我有一个包含文件的网络目录,我想将它们全部删除。我看过网上但所有答案都依赖于文件系统,我想使用网站的目录。我试过这个:

foreach (string file in HttpContext.Current.Server.MapPath("\\MyDirectory"))
{
     File.Delete(file);
}

foreach语句带有下划线,错误为'cannot convert type char to string'.

删除目录中所有文件的语法是什么?

感谢。

2 个答案:

答案 0 :(得分:3)

您可能需要更正MapPath参数(\\ MyDirectory),但您需要的语法如下所示。

System.IO.DirectoryInfo di= new DirectoryInfo(HttpContext.Current.Server.MapPath("\\MyDirectory"));

foreach (FileInfo file in di.GetFiles())
{
  file.Delete(); 
}

答案 1 :(得分:1)

Server.MapPath为您提供目录路径,而不是文件/文件夹数组。如果要删除文件夹中的所有文件,请执行以下操作:

var folderPath = HttpContext.Current.Server.MapPath("\\MyDirectory");
foreach (string file in Directory.GetFiles(folderPath))
{
    File.Delete(file);
}

如果你想删除该文件夹,那么

var folderPath = HttpContext.Current.Server.MapPath("\\MyDirectory");
Directory.Delete(folderPath);

删除主文件夹中的所有文件夹

var folderPath = HttpContext.Current.Server.MapPath("\\MyDirectory");
foreach (string file in Directory.GetDirectoriesfolderPath))
{
    File.Delete(file);
}