一个简略的MD5生成方法
一个简单的MD5生成方法
两个地方要注意的:
1.Integer.toHexString转换出来的字符串是没有前缀0的,所以需要补上。
2.有些应用程序只认大写,所以最后转换成大写。
public static String createMD5(String src) throws NoSuchAlgorithmException, UnsupportedEncodingException { String result=""; if(src!=null) { MessageDigest md=MessageDigest.getInstance("MD5"); md.update(src.getBytes("UTF-8")); byte messageDigest[] = md.digest(); StringBuffer hexString = new StringBuffer(); for (int i=0;i<messageDigest.length;i++) { String hex = Integer.toHexString(0xFF & messageDigest[i]); hexString.append(hex.length()<2 ? "0"+hex : hex); } result=hexString.toString().toUpperCase(); } return result; }
两个地方要注意的:
1.Integer.toHexString转换出来的字符串是没有前缀0的,所以需要补上。
2.有些应用程序只认大写,所以最后转换成大写。