我目前正在使用以下代码读取公钥文件:
// Read Public Key.
File filePublicKey = new File(path + "/public.key");
FileInputStream fis = new FileInputStream(path + "/public.key");
byte[] encodedPublicKey = new byte[(int) filePublicKey.length()];
fis.read(encodedPublicKey);
fis.close();
但是,我希望将密钥文件包含在我的 jar 中。我已在 Eclipse 中将密钥文件拖到我的项目中,我正在尝试使用以下内容加载公钥以替换上面的内容:
InputStream is = getClass().getResourceAsStream( "/RSAAlgorithm2/public.key" );
byte[] encodedPublicKey = new byte[(int) 2375];
is.read(encodedPublicKey);
is.close();
但是我不断收到 NullPointerException。
java.lang.NullPointerException at RSA.LoadKeyPair(RSA.java:122) at RSA.main(RSA.java:31)
这是因为我错误地加载了文件吗?文件可以像这样拖到eclipse中并加载,还是需要将它们与JAR分开?