日期:2014-05-17  浏览次数:20471 次

.net上传文件如何实现不重复上传?
因为网站都是大文件上传,为了节约服务器空间,能不能实现已上传过的文件提示文件已存在,目前可以实现同名文件提示,但是如果同一个文件,重命名后再上传,实际文件除了文件名,其他完全相同,这样的情况怎么去处理判断?

------解决方案--------------------
校验文件的md5,你这种情况md5是一样的,只要文件内容一样md5就一样。
------解决方案--------------------
用hash算法比较两个文件是否相同,不过像md5这种hash已经可以模拟碰撞了,所以最好多用几种hash,当然最好还是逐字比较,大文件可能比较慢一点。

不过后者只能在服务器端做,前者你可以用flash获得文件的md5再和服务器端进行比较
------解决方案--------------------
引用:
公司内部人员使用,不会出现你说的那种闲的蛋疼的人的,这样的目的是为了节约服务器空间和防止大文件反复传浪费时间


没有闲人的话,文件MD5+文件大小(精确到字节),你只能控制到这里了
------解决方案--------------------
每次上传的文件,你在数据库中存一下文件的MD5和大小,根据MD5和文件大小去判断一下,除了MD5还可以用其他的类似的方法,理论就是这样,自己看着办