当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

MD5验证器

发表于: 2011-02-24   作者:coach   来源:转载   浏览:
摘要: import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.security.MessageDigest; imp
import java.io.BufferedInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class Digest
{

    /**
     * 获取指定文件的md5值。
     * 
     * @param path 待验证的文件名
     */
    public static String checkMD5(String path)
    {
        StringBuilder sb = new StringBuilder();
        try
        {
            MessageDigest md5 = MessageDigest.getInstance("MD5");// 生成MD5类的实例
            File file = new File(path); // 创建文件实例,设置路径为方法参数
            FileInputStream fs = new FileInputStream(file);
            BufferedInputStream bi = new BufferedInputStream(fs);
            ByteArrayOutputStream bo = new ByteArrayOutputStream();
            byte[] b = new byte[bi.available()]; // 定义字节数组b大小为文件的不受阻塞的可访问字节数
            // int i;
            // 将文件以字节方式读到数组b中
            while ((bi.read(b, 0, b.length)) != -1)
            {
            }
            md5.update(b);// 执行MD5算法
            for (byte by : md5.digest())
            {
                sb.append(String.format("%02X", by));// 将生成的字节MD5值转换成字符串
            }
            bo.close();
            bi.close();
        }
        catch (NoSuchAlgorithmException e)
        {
            e.printStackTrace();
            return null;
        }
        catch (IOException e)
        {
            return null;
        }

        return sb.toString();// 返回MD5值
    }

    public static void main(String[] args) throws Exception
    {
        String md5 = checkMD5("c:\\MM.MP3");
        System.out.println(md5);
    }
}

MD5验证器

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号