如何解决上传文件时文件内容相同

Posted Mr. Ma

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决上传文件时文件内容相同相关的知识,希望对你有一定的参考价值。

现在有这样一个需求:要求在上传文件时,凡是上传的文件,只要内容相同就只在服务器保存一份。

  如何比较文件内容?如果当时思维受限,很难想到来比较文件内容的办法。

解决办法:

  文件上传,肯定少不了用流来读文件,文件内容相同的根源就是:流读出来的字节码相同。这就想到了解决的办法,可是问题又来了。怎么比较字节码?想想那么长的字节码,如果用字符串的equals方法来比较,这不是一个好的解决办法。经过一番思考,我决定把流读出来的字节码进行MD5加密,用加密后的字符串来当作文件的文件名,然后在进行文件的上传(文件内容相同,自然文件名也就相同咯,然后就自动覆盖了),这样就解决了该需求。

  

以上是关于如何解决上传文件时文件内容相同的主要内容,如果未能解决你的问题,请参考以下文章

解决上传文件或图片时选择相同文件无法触发change事件的问题

ftp 上传文件内容为空

java如何区分上传的文件

如何防止在laravel中上传相同的文件

如何提供从客户端上传文件夹的选项并进行相同处理?

php中上传文件的散列内容