import java.security.MessageDigest; public class test2
{
public static void main(String[] args) { String str = md5("111111"); System.out.println(str); } public static String md5(String txt) { try{ MessageDigest md = MessageDigest.getInstance("MD5"); md.update(txt.getBytes("GBK")); //問題主要出在這里,Java的字符串是unicode編碼,不受源碼文件的編碼影響;而PHP的編碼是和源碼文件的編碼一致,受源碼編碼影響。 StringBuilder buf = new StringBuilder(); for(byte b:md.digest()){ buf.append(String.format("%02x", b&0xff)); } return buf.toString(); }catch( Exception e ){ e.printStackTrace(); return null; } }
}
