我的项目里有个file文件夹下,有一张图片1.jpg
上传到服务器后,我想通过代码把它删除掉,可是路径问题总是搞不明白,
要得到图片在服务器的物理路径
如D:\web123\WebSite1\file\1.jpg这样的路径才能删除是吗?
请教解决方法!NET(C#)

解决方案 »

  1.   

    必须使用服务器端的物理路径才能删除的。IO.File.Delete(path) 这里的 path 参数是物理路径。通过 Server.MapFile(path) 方法得到文件在服务器端的物理路径。
      

  2.   

    通过网页后台代码不是FTP
      

  3.   


    哦 那应该是物理路径,用fullpath()取一下也行
      

  4.   

    使用Server.MapPath(path)得到服务器路径,然后看你的1.jpg是在哪个路径(相对服务器路径path),然后用System.IO.File.Delete(myfile);删除文件
      

  5.   

    2楼的就可以啊  Server.MapPath(path)  具体看你执行删除的文件路径和图片路径
      fIEL.DELETE()  这里必须得到服务器的物理路径string path=server.Mappath("file/1.jpg");
    try
    {
     file.delete(path)
    }
    catch
    {}
      

  6.   

    Server.MapFile(path) 方法是理想的选择,我不知道你这是WinForm程序,还是WinWeb网站程序,应该都有根目录这一说吧,我处理网站路径时会根据根目录然后定位其子文件的方法,其实你上传一个文件,你应该知道它位于哪个地址,因为这个并不是不能预见的,比如我们可以获取这个文件位于哪个里面,然后这个路径就是删除时用到的路径
      

  7.   

    我们是生活在一个"枚举"的空间,而不是一种"未知"的空间,电脑硬盘无非是:C,D,E,F.不管哪个,肯定是26个英文字母吧,嘿嘿,不知道我说的你能明白我的意思不,是"枚举"而不是"猜测/未知"
      

  8.   

    我们是生活在一个"枚举"的空间,而不是一种"未知"的空间,电脑硬盘无非是:C,D,E,F.不管哪个,肯定是26个英文字母吧,嘿嘿,不知道我说的你能明白我的意思不,是"枚举"而不是"猜测/未知"
      

  9.   

    string prourl;
    prourl="xxxxxx.jpg";
    System.IO.File.Delete(System.Web.HttpContext.Current.Server.MapPath("../Upload/" + prourl));
      

  10.   

    使用Server.MapPath(path)得到服务器路径,然后看你的1.jpg是在哪个路径(相对服务器路径path),然后用System.IO.File.Delete(myfile);删除文件