我需要以 char 形式显示原始字节数据,但我遇到了一些问题,例如 [ 1, 32, -1, -1 ](字节数据),当转换为 char 时,它是 [ 1, 3, 2, -, 1, - ,1]
我的需求
[ 1, 32, -1, -1 ] 字符格式。
慢慢地
我用了命令
StringBuilder buffer = new StringBuilder();
for(int i = 0; i < byte1.length;i++){
buffer.append(byte1[i]);
}
char[] c = buffer.toString().toCharArray();
没有满足我的要求。
然后我用
char dig = (char)(((int)'0')+ (-32));
it gave an invalid output
请帮助我的要求。提前致谢
最佳答案
为什么你需要坚持使用字符串,使用 char 数组,首先附加额外的 0 以防它很短,如果你的数据是字节格式,使用 bytes1.toString()
然后一些东西像这样,
public class Example {
public static void main(String args[])
{
String[] byte1 = {"2","45","56","1"};
for (int i = 0; i < byte1.length; i++) {
if(byte1[i].length()<2){
byte1[i] = "0"+byte1[i];
}
}
char[][] chr = new char[5][10];
StringBuilder buffer = new StringBuilder();
for(int i = 0; i < byte1.length;i++){
chr[i] = byte1[i].toCharArray();
}
for (int i = 0; i < chr.length; i++) {
System.out.println(chr[i]);
}
}
}
关于java - 字节 [] 到字符 [],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20950424/