天天看點

android md5加密歡迎來到林大大得csdn

歡迎來到林大大得csdn

今天給大家帶來最全面得md5Utils,該工具類包括了三種不同得方法,可以根據字元碼得類型進行加密。類型包括:GB2312,GBK,UTF-8。網上相應得資源是很少得,大家珍惜啊。

下面是工具類:

/**
 * Md5加密工具類
 */
public class Md5Utils {

    private Md5Utils() {
    }

    public static String getVal(String plainText) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            try {
                md.update(plainText.getBytes("GB2312"));
            } catch (UnsupportedEncodingException e) {
                e.printStackTrace();
                return null;
            }
            byte b[] = md.digest();

            int i;
            StringBuffer buf = new StringBuffer("");
            for (int offset = ; offset < b.length; offset++) {
                i = b[offset];
                if (i < )
                    i += ;
                if (i < )
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }

            return buf.toString();

        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        }
    }

    public static String getVal_GBK(String plainText) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(plainText.getBytes("GBK"));
            byte b[] = md.digest();

            int i;
            StringBuffer buf = new StringBuffer("");
            for (int offset = ; offset < b.length; offset++) {
                i = b[offset];
                if (i < )
                    i += ;
                if (i < )
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }

            return buf.toString();

        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
            return null;
        }
    }

    public static String getVal_UTF8(String plainText) {
        try {
            MessageDigest md = MessageDigest.getInstance("MD5");
            md.update(plainText.getBytes("UTF-8"));
            byte b[] = md.digest();

            int i;
            StringBuffer buf = new StringBuffer("");
            for (int offset = ; offset < b.length; offset++) {
                i = b[offset];
                if (i < )
                    i += ;
                if (i < )
                    buf.append("0");
                buf.append(Integer.toHexString(i));
            }

            return buf.toString().toUpperCase();

        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
            return null;
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
            return null;
        }
    }
}
           

==本文為原創,翻版必究==