我有两个程序。一种是用 C 语言编写的,通过串行端口发送未签名字符的结构。
另一个是用 Java 编写的,应该接收这些数据。
我正在使用从串行端口读取后返回字节数组的 jSSC 库。我现在如何提取原始值?
发送什么:1,99,23,15,16,17,18 字节我收到:[B@c1c428 字节转换为字符:[C@13526b0
发送数据正常。我还编写了一个 C 程序来读取正确接收它的数据,因此问题似乎出在 Java 程序中。
System.out.println("Port " + PortName + " opened: " + serialPort.openPort());
//serialPort.setParams(9600, 8, 1, 0);
byte[] input;
if((input = serialPort.readBytes()) == null){
System.out.println("No data to be read");
System.exit(0);
}
char[] chars = new String(input).toCharArray();
System.out.println("Bytes read: " + input.length);
System.out.println("Byteoutput: " + input);
System.out.println("Charoutput: " + chars);