package com.example.duijiang.utils;
import java.security.MessageDigest;
public class MD5Util {
public static StringbyteArrayToHexString(byte b[]) {
StringBuffer resultSb =new StringBuffer();
? ? ? ? for (int i =0; i < b.length; i++){
resultSb.append(byteToHexString(b[i]));
? ? ? ? }
return resultSb.toString();
? ? }
private static StringbyteToHexString(byte b) {
int n = b;
? ? ? ? if (n <0) {
n +=256;
? ? ? ? }
int d1 = n /16;
? ? ? ? int d2 = n %16;
? ? ? ? return hexDigits[d1] +hexDigits[d2];
? ? }
public static StringMD5Encode(String origin, String charsetname) {
if(charsetname==null){
charsetname="UTF-8";
? ? ? ? }
String resultString =null;
? ? ? ? try {
resultString =new String(origin);
? ? ? ? ? ? MessageDigest md = MessageDigest.getInstance("MD5");
? ? ? ? ? ? if (charsetname ==null ||"".equals(charsetname)) {
resultString =byteArrayToHexString(md.digest(resultString.getBytes()));
? ? ? ? ? ? }else {
resultString =byteArrayToHexString(md.digest(resultString.getBytes(charsetname)));
? ? ? ? ? ? }
}catch (Exception exception) {
}
return resultString;
? ? }
private static final StringhexDigits[] = {"0", "1", "2", "3", "4", "5",
? ? ? ? ? ? "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" };
}