Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用Java计算串行十六进制字节数_Java_Jakarta Ee_Serial Port - Fatal编程技术网

用Java计算串行十六进制字节数

用Java计算串行十六进制字节数,java,jakarta-ee,serial-port,Java,Jakarta Ee,Serial Port,每次发送我都会收到11字节的数据。它总是以识别设备的0A 52开头。其余的是: 0A 52 08 01 01 01 00 C1 20 02 59 52 Packettype 08 subtype 01 Sequence nbr 01 01 ID 00 C1 SenseT 20 SenseH 02 Status 5 level 9 PwrLvl 由于没有CR/LF,读取11个字节的最佳方式是什么?确保它以0A 52开

每次发送我都会收到11字节的数据。它总是以识别设备的0A 52开头。其余的是:

0A 52 08 01 01 01 00 C1 20 02 59 

52 Packettype    
08 subtype       
01 Sequence nbr  
01 01 ID            
00 C1 SenseT
20 SenseH
02 Status         
5  level  
9  PwrLvl
由于没有CR/LF,读取11个字节的最佳方式是什么?确保它以0A 52开头,并且仍然能够将最后一个字节拆分为半字节

谢谢你的帮助

而((len=this.in.read(缓冲区,0,1))>-1)

将要读取的字节长度设置为1将解决此问题。 见:


这比我能解释得更好

这个问题是一个很好的起点,给出的示例可以很容易地修改为读取11字节,而不是8字节。javax.comm在我的理解中或多或少被贬低了。不推荐使用?我不这么认为。不过,您可能需要使用API的第三方实现,具体取决于您的平台。看,是的,这就是我在qbang.org上使用的rxtx。