如何从文件夹中删除图像

pcs*_*pcs 0 c#

当我上传新图像时,我想从文件夹中删除以前上传的图像.

这是我上传图片的代码:

try
{
      string filename = Image1.ImageUrl.Substring(Image1.ImageUrl.IndexOf('/', Image1.ImageUrl.Length));
      if (fileupload.PostedFile.FileName.Length > 0)
      {                        
             filename = Path.GetFileName(fileupload.PostedFile.FileName);
             fileupload.SaveAs(Server.MapPath("~/Images/" + filename));
      }                    
      com.Parameters.AddWithValue("@Image",(filename.Length>0)? "Images/" + filename:string.Empty);
      com.ExecuteNonQuery();                    
}
catch (Exception ex)
{
      btnsub.Text = ex.Message;
}
Run Code Online (Sandbox Code Playgroud)

在这里,我将图像保存在一个名为Images的服务器文件夹中,使用FileUpload,所以在我上传新图像之前,我想从文件夹中删除以前上传的图像.

我可以知道,如何删除以前上传的图片?

Acc*_*ied 8

如何删除文件

var filePath = Server.MapPath("~/Images/" + filename);
if(File.Exists(filePath))
{
    File.Delete(filePath);
}
Run Code Online (Sandbox Code Playgroud)

如何删除文件夹中的所有文件:

var folderPath = Server.MapPath("~/Images/");
System.IO.DirectoryInfo folderInfo = new DirectoryInfo(folderPath);

foreach (FileInfo file in folderInfo .GetFiles())
{
    file.Delete(); 
}
foreach (DirectoryInfo dir in folderInfo.GetDirectories())
{
    dir.Delete(true); 
}
Run Code Online (Sandbox Code Playgroud)

  • `File.Delete`已经检查是否存在,因此无需检查自己. (2认同)