我有一个嵌入式系统,我必须将我的 Java 应用程序与之集成。到目前为止,我的工作进展顺利,但现在我遇到了一个问题,我需要发送 160 号。OutputStream 将只接受一个字节 [],当我尝试将 160(十六进制值 0xA0)插入数组时,它被转换为 -96。我知道 Java 字节只支持有符号值(-127 到 128),所以我想知道是否有其他人在处理嵌入式系统时遇到过类似的问题以及他们的解决方案是什么。
这是一些示例代码:
OutputStream oStream = mmSocket.getOutputStream();
byte attributeCode = (byte)0xA0;
byte[] buffer = new byte[bufferSize];
buffer[command.length + 1] = attributeCode;
oStream.write(buffer);
嵌入式系统是用 C 语言编写的,并且已经存在多年,所以没有机会改变它。