Вопрос

Мне нужно создать хеш HTML-кода веб-страницы (из ее URL-адреса), используя SHA1 или MD5 в Java, но я не знаю, как это сделать...Вы можете помочь мне?

Это было полезно?

Решение

Раффаэле Ди Фацио:

вы можете использовать эту функцию для генерации 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;
    }

Я надеюсь, что это помогает.Пожалуйста, дайте нам знать, если это правильное направление для этого вопроса.

Тигр.

Другие советы

DigestUtils.sha(String) должен выполнить работу для URI или HTML веб-страницы, хотя вы должны получить HTML страницы из ее URI, если это часть проблемы.Если это так, вы можете рассмотреть возможность использования Commons HttpClient для GET страница.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top