您的位置:首页 > 其它

md5得到16或32位十六进制

2016-03-22 12:54 302 查看
public static String 32Md5(String text) {
StringBuffer buf = null;
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(text.getBytes());
byte b[] = md.digest();
int i;
buf = new StringBuffer("");
for (int offset = 0; offset < b.length; offset++) {
i = b[offset];
if(i<0) i+= 256;
if(i<16)
buf.append("0");
buf.append(Integer.toHexString(i));
}

} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return buf.toString();
}
public static String 16Md5(String text) {StringBuffer buf = null;try {MessageDigest md = MessageDigest.getInstance("MD5");md.update(text.getBytes());byte b[] = md.digest();int i;buf = new StringBuffer("");for (int offset = 0; offset < b.length; offset++) {i = b[offset];if(i<0) i+= 256;if(i<16)buf.append("0");buf.append(Integer.toHexString(i));}} catch (NoSuchAlgorithmException e) {// TODO Auto-generated catch blocke.printStackTrace();}return buf.toString().substring(8,24);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: