rfcs: http://www.faqs.org/rfcs/rfc1321.html
import java.security.*;
import java.security.spec.*;
public class MD5{
public String convert(String s){
char hexChars[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
try {
byte[] bytes = s.getBytes();
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(bytes);
bytes = md.digest();
int j = bytes.length;
char[] chars = new char[j * 2];
int k = 0;
for (int i = 0; i < bytes.length; i++) {
byte b = bytes[i];
chars[k++] = hexChars[b >>> 4 & 0xf];
chars[k++] = hexChars[b & 0xf];
}
return new String(chars);
}
catch (Exception e){
return null;
}
}
public static void main(String[] args){
System.out.println(new MD5().convert("0123456789"));
}
该博客展示了用Java实现MD5字符串转换的代码。通过导入相关包,定义MD5类,在convert方法中对输入字符串进行处理,利用MessageDigest计算MD5值并转换为十六进制字符串,还给出了main方法进行测试,同时对可能出现的异常进行了处理。
685

被折叠的 条评论
为什么被折叠?



