我需要在 java 中使用 SHA1 或 MD5 创建网页 html 的哈希(来自其 URL),但我不知道该怎么做......你能帮我吗?
问问题
1917 次
2 回答
2
拉斐尔·迪法齐奥:
您可以使用此函数从字符串生成 MD5 作为 HashValue;例如,
String hashValue = MD5Hash("URL or HTML".getBytes());
/**
* MD5 implementation as Hash value
*
* @param a_sDataBytes - a original data as byte[] from String
* @return String as Hex value
* @throws NoSuchAlgorithmException
*/
public static String MD5Hash(byte[] dataBytes) throws NoSuchAlgorithmException {
if( dataBytes == null) return "";
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(dataBytes);
byte[] digest = md.digest();
// convert it to the hexadecimal
BigInteger bi = new BigInteger(digest);
String s = bi.toString(16);
if( s.length() %2 != 0)
{
s = "0"+s;
}
return s;
}
我希望它有所帮助。请让我们知道这是否是该问题的正确方向。
老虎。
于 2009-08-06T12:48:58.820 回答
1
DigestUtils.sha(String)
应该为 URI 或网页的 HTML 完成这项工作,尽管如果这是问题的一部分,则需要从其 URI 获取页面的 HTML。如果是这样,您可能需要考虑使用Commons HttpClient 访问GET
页面。
于 2009-08-06T12:21:21.923 回答