/**
?* Title: MD5加密算法
?* Description:
?* Copyright: Copyright (c) 2006
?* Company: DREAM ZONE
?* @author unascribed
?* @version 1.0
?*/
import java.security.MessageDigest;
public class StringUtil {
?private final static String[] hexDigits = { "0", "1", "2", "3", "4", "5",?"6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };
?/**
? * 轉換字節(jié)數組為16進制字串
? *
? * @param b
? *??????????? 字節(jié)數組
? * @return 16進制字串
? */
?public static String byteArrayToHexString(byte[] b) {
??StringBuffer resultSb = new StringBuffer();
??for (int i = 0; i < b.length; i++) {
???resultSb.append(byteToHexString(b[i]));
??}
??return resultSb.toString();
?}
?private static String byteToHexString(byte b) {
??int n = b;
??if (n < 0)
???n = 256 + n;
??int d1 = n / 16;
??int d2 = n % 16;
??return hexDigits[d1] + hexDigits[d2];
?}
?public static String MD5Encode(String origin) {
??String resultString = null;
??try {
???resultString = new String(origin);
???MessageDigest md = MessageDigest.getInstance("MD5");
???resultString = byteArrayToHexString(md.digest(resultString
?????.getBytes()));
??} catch (Exception ex) {
??}
??return resultString;
?}
?
?//測試方法
?public static void main(String[] args) {
??String res = MD5Encode("1");
??System.err.println(res);
?}
}