java生成字符串32位md5值
时间: 2023-10-09 09:06:14 浏览: 137
MD5生成器(32位)
在Java中,可以使用如下代码生成一个字符串的32位MD5值:
```java
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Util {
public static String md5(String input) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] messageDigest = md.digest(input.getBytes());
BigInteger no = new BigInteger(1, messageDigest);
String hashtext = no.toString(16);
while (hashtext.length() < 32) {
hashtext = "0" + hashtext;
}
return hashtext;
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException(e);
}
}
}
```
其中,`md5` 方法接收一个字符串参数 `input`,并返回该字符串的32位MD5值。在生成MD5值时,我们首先获取一个 `MessageDigest` 实例,然后通过 `digest` 方法将字符串转换为字节数组,并计算该字节数组的MD5值。最后,我们将MD5值转换为16进制字符串,并使用前导零补足不足32位的情况。
阅读全文