如何从asp.net中的物理路径中删除图像

时间:2014-09-12 05:11:58

标签: asp.net

我需要从物理路径中删除图像  @" E:\Inetpub\vhosts\website.com\website2.com\images\abc.jpg。我该怎么办?

3 个答案:

答案 0 :(得分:0)

假设您的应用程序标识具有权限,您可以调用File.Delete(filePath)删除该文件。此外,无需根据MSDN上的备注检查文件是否存在。

  

如果要删除的文件不存在,则不会抛出任何异常。

答案 1 :(得分:0)

使用File类非常简单。

string path=@" E:\Inetpub\vhosts\website.com\website2.com\images\abc.jpg";
if(File.Exists(path))
{
    File.Delete(path);
}

您的应用程序必须能够访问该文件夹。

编辑1

string path=Server.MapPath(@"images\abc.jpg");
if(File.Exists(path))
{
    File.Delete(path);
}

答案 2 :(得分:0)

使用ListView / Repeater show文件。

//Load file:

using System.IO;

DirectoryInfo dir = new DirectoryInfo(Server.MapPath("~/Images/"));

lvImages.DataSource = dir.GetFiles("*.*");
lvImages.DataBind();

//删除:

protected void lvImages_ItemDeleting(object sender, ListViewDeleteEventArgs e)
{
    try
    {
        e.Cancel = true;
        string fileName = ((Literal)lvImages.Items[e.ItemIndex].FindControl("ltrImagePath")).Text;
        fileName = Path.Combine(Server.MapPath("~/Images/"), fileName);
        File.Delete(fileName);
    }
    catch { }
}