MessageDigest messageDigest = MessageDigest.getInstance("MD5");
messageDigest.update ("Hello World".getBytes("UTF8"));
byte[] out = messageDigest.digest ();
for (int i=0; i<out.length; i++) {
System.out.println (Integer.toHexString(0xFF & out[i]));
}=========================
怎么格式化字串,使每一个字节转为十六进制字串时输出两个字符?
messageDigest.update ("Hello World".getBytes("UTF8"));
byte[] out = messageDigest.digest ();
for (int i=0; i<out.length; i++) {
System.out.println (Integer.toHexString(0xFF & out[i]));
}=========================
怎么格式化字串,使每一个字节转为十六进制字串时输出两个字符?
* 二进制转字符串
* @param b 二进制数据
* @return 16进制的字符串
*/
public static String byte2Hex(byte[] b)
{
String hs="";
StringBuffer hsb=new StringBuffer(b.length*2+16);
String stmp="";
for (int n=0;n<b.length;n++)
{
stmp=(java.lang.Integer.toHexString(b[n] & 0XFF));
if (stmp.length()==1)
hsb.append("0");
hsb.append(stmp);
}
hs=hsb.toString();
return hs.toUpperCase();
}