获取文件的md5值

获取文件的md5值,第1张

此处我们需要用到一个spark-md5的js库类

把他安装到我们项目中: npm install spark-md5 --save

以下为我根据官方demo,改编成一个公用函数,并放到项目的crypto.util.js的文件,用来统一存放项目中需要用到的加密解密的方法

使用的时候,只需要引入该方法,即:

参考: spark-md5 npm官方地址

如何计算本地文件的md5值?

计算文件的 md5 值,读取数据字节,然后计算 md5。逻辑上是这样的,但是一次性把文件读入,文件小还可以,文件大是不太现实的,而本地文件通常都有相当的大小。所以要分批读入并计算。

以下是使用分批读入计算的。

其中关于 md5 的计算,使用了 CryptoSwift 第三方库

public static String getFileMD5(File file) {

        if (!file.isFile()) {

            return null

        }

        MessageDigest digest = null

        FileInputStream in = null

        byte buffer[] = new byte[1024]

        int len

        try {

            digest = MessageDigest.getInstance("MD5")

            in = new FileInputStream(file)

            while ((len = in.read(buffer, 0, 1024)) != -1) {

                digest.update(buffer, 0, len)

            }

            in.close()

        } catch (Exception e) {

            e.printStackTrace()

            return null

        }

        BigInteger bigInt = new BigInteger(1, digest.digest())

        return bigInt.toString(16)

    }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12107467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存