如何在java中将字节数组转换为BigInteger

我正在研究java …我想知道如何将字节数组转换为BigInteger。 实际上我使用了md5的digest方法,它返回了我想要转换为Biginteger的字节数组。

这个示例在几行Java中获取MD5哈希有一个相关的例子。

我相信你应该能做到的

MessageDigest m=MessageDigest.getInstance("MD5"); m.update(message.getBytes(), 0, message.length()); BigInteger bi = new BigInteger(1,m.digest()); 

如果你想以"d41d8cd98f00b204e9800998ecf8427e"的风格打印,你应该可以做到

 System.out.println(bi.toString(16)); 

实际上我使用了md5的digest方法,它返回了我想要转换为BigInteger的字节数组。

您可以使用new BigInteger(byte[])

但是,应该注意的是MD5哈希在任何有用的意义上都不是真正的整数。 它实际上只是一个二进制位模式。

我想你只是这样做,这样你就可以打印或订购MD5哈希。 但是,完成这两项任务的内存消耗方式较少。