Java 相当于 PHP pack() 函数

Java equivalent for PHP pack() function

我有一个 PHP 函数。这段代码是加密密码

有人知道我如何用 Java 代码写这个吗?

这是我尝试过的,但没有给我结果。

    byte[] rawSHA = null;
    byte[] base64HexSHA = null;
    MessageDigest md= null;

    try {
        md = MessageDigest.getInstance("MD5");
    } catch (NoSuchAlgorithmException e) {
        LOG.error("Unable to load MD5 Message Digest : " + e.getMessage(), e);
        throw new IllegalStateException("MD5 Message Digest Instance Not Found");
    }


    rawSHA = md.digest(rawText.getBytes("UTF-8"));
    base64HexSHA = Base64.encodeBase64(rawSHA);
    System.out.println("result = "+base64HexSHA );

感谢帮助

编辑: 我将其用于 base64 库

import org.apache.tomcat.util.codec.binary.Base64;
String someString = "qwe";
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
String checksum = new BigInteger(1, messageDigest.digest(someString.getBytes())).toString(16);
System.out.println(checksum);

希望这对您有所帮助..:)

我已经解决了这个问题。这可能对其他人有帮助。

    String ps="tes";
    MessageDigest md = MessageDigest.getInstance("MD5");
    byte[] encryptedPassword = md.digest(ps.getBytes());
    byte[] encodedBytes = Base64.encodeBase64(encryptedPassword);
    String Str2 = new String(encodedBytes);

给我一个结果:

before =tes
after :KLZi2IO212/Zbk3cXpungA