gpt4 book ai didi

java - Jacksum NoSuchAlgorithmException

转载 作者:行者123 更新时间:2023-12-02 06:27:39 26 4
gpt4 key购买 nike

我正在尝试使用 Jacksum API generate a Whirlpool hash ,但我收到了 NoSuchAlgorithmException:

import java.security.NoSuchAlgorithmException;
import jonelo.jacksum.JacksumAPI;
import jonelo.jacksum.algorithm.AbstractChecksum;

public static String genHash(String inText) {

AbstractChecksum checksum = null;
checksum = JacksumAPI.getChecksumInstance("whirlpool");
checksum.update(inText.getBytes());
return checksum.getFormattedValue();

}

我尝试了其他流行的算法(sha256、md5),但它们显然“不是这样的”。

./libsdpg.java:27: error: unreported exception NoSuchAlgorithmException; must be caught or declared to be thrown
checksum = JacksumAPI.getChecksumInstance("whirlpool");
^
1 error

编辑:我添加了 try-catch,现在它实际上收到了错误。

最佳答案

您实际上并没有“得到”异常。编译器告诉您未能正确处理已检查的异常。

JacksumAPI#getChecksumInstance(java.lang.String) 方法抛出一个名为 NoSuchAlgorithmException 的已检查异常。受检查的异常必须显式处理(使用 try-catch),或者封闭方法必须通过将其包含在其签名中来声明它抛出该异常。所以你的选择是:

try {
...
checksum = JacksumAPI.getChecksumInstance("whirlpool");
...
} catch(NoSuchAlgorithmException e) {
//handle the exception
}

或将您的方法签名更改为:

public static String genHash(String inText) throws NoSuchAlgorithmException {
...
}

请记住,使用第二个选项您只是将处理提升到了更高的级别(即调用 genHash 的位置);您本质上必须在某个时候处理它。

关于java - Jacksum NoSuchAlgorithmException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20381899/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com