我在做一个上传程序,我想知道上传的文件在服务器上是否存在,文件名相同,但内容不同的仍然能够传上去,不覆盖服务器上的文件?

解决方案 »

  1.   

    string fileName = "你上传文件的名字(例word.gif)"
    string imgurl = Server.MapPath("proImages")+"\\"+fileName;
    if(System.IO.File.Exists(imgurl))
    {
    Response.Write("<script>alert('服务器已存在有相同名的图片,请稍后再试!')</script>");
    return;
    }
      

  2.   

    文件上传到服务器后,可以用Guid作为文件的名称,这样可以不用考虑重名的问题,如果需要知道真实的文件名的话,可以写个文件列表,存放Guid与真实的文件名的对应关系
      

  3.   

    文件下载到本地比较
    Compareto()方法
      

  4.   

    我觉得你的想法是好的,但是我问你,你如何在Windows里实现?
    不光Windows,其他操作系统也一样,文件名称+扩展名要唯一,要不怎么实现定位
    就像你的身份证一样,可以名字一样,但长相不一样,身份证编号也不一样,要是都一样了,怎么知道是你还是他。