不兼容的类型:字节[]不能转换为字节
问题描述:
我目前正在尝试使用RSA加密用户输入数据(我知道它不是最好的方式,但它的工作分配,我需要这样做)我有它加密并解密小字符串的数据,但现在试图通过分割每个字的字符串移动到任何长度的数据,但是当我尝试以这种方式加密数据时,我得到一个错误,说“不兼容的类型:字节[]不能转换为字节“不兼容的类型:字节[]不能转换为字节
我不知道为什么会发生这种情况或如何解决它。任何帮助将是非常大,所以即使是在如何去了解这个不同
final String originalText = "New Class NewClass NewClass NewClass ";
String[] splited = originalText.split("\\s+");
ObjectInputStream inputStream = null;
// Encrypt the string using the public key
inputStream = new ObjectInputStream(new FileInputStream(PUBLIC_KEY_FILE));
final PublicKey publicKey = (PublicKey) inputStream.readObject();
final byte[] cipherText = null;
for (int i = 0; i < splited.length; i++) {
LINE ERROR APPEARS ON
cipherText[i] = encrypt(splited[i], publicKey);
System.out.println(cipherText[i]);
}
答
在调用encrypt
你得到字节数组,所以你cipherText
可以byte[][] cipherText
,然后看到它的想法就叫System.out.println(new String(cipherText[i]));
编辑NPE
是因为您没有初始化您的cipherText
阵列而引发的。请尝试以下操作:
byte[][] cipherText = new byte[splited.length][];
大概是:'加密()''返回字节[]''不byte' – 2014-03-06 17:58:34