可能重复:
将 char 数组转换为字节数组并再次返回
我有一个密码,char[]
我想输入这个密码byte[]
而不创建任何String
. 请建议最好的方法。
如果您只需要 ASCII 或 ISO-8859-1 编码,则可以一次复制一个字符。
char[] chars = ...
byte[] bytes = new byte[chars.length];
for(int i = 0; i < chars.length; i++)
bytes[i] = (byte) chars[i];
我不知道有任何内置工具可以做到这一点。您可能想要创建一个实用程序类来为您解决问题。
public static byte[] charToByte(char[] array) {
byte[] result = new byte[array.length];
for(int i = 0; i < array.length; i++) {
result[i] = (byte) array[i];
}
return result;
}
此解决方案如何受到您使用的编码的限制。