1

我在 processing.js 中接收 udp 数据包以在我的应用程序中使用它们。在下面的代码中,我提取了我想要的值,但问题是通过这种方式,第一个数据包中的所有数据都保存到(数组) bin[0] 中,第二个数据包在 bin[1] 中......而我想要分离每个数据包的数据。知道我该怎么做吗?

请注意,这个 java 代码是用 processing.js 编写的,它使用超媒体库来接收数据包!

这是完整的代码:

void receive(byte[] data, String HOST_IP, int PORT_RX) {
  receivedFromUDP ="";
  for (int i = 0; i < data.length; i++) {
    receivedFromUDP += str(data[i]) + " ";
int[] bin =new int[]{unbinary(binary(data[2*i+1])+binary(data[2*i]))};
println("bin is" + bin[0]);
  }
  //println(data);
}

print(bin[0]) 的输出是:

bin is4495
bin is50
bin is8250
bin is50
bin is6435
bin is310
bin is14800
bin is65406
bin is4485
bin is40
bin is25500
bin is10200
bin is4850
bin is65
bin is7415
bin is350
bin is25500
bin is62976
bin is25500
bin is62976
bin is25500
bin is62976
bin is25500
bin is62976

所以所有这些数据包都保存到 bin[0] 中,而我想将它们分开!也许问题是我在这里接收数据( receivedFromUDP += str(data[i]) + " ";) 作为字符串!我怎么能在这里将数据保存到数组中?

2.我的数据是浮点数,但我将它乘以 100 以便能够轻松发送它们,现在我可以转换数组来保存这个浮点数据吗?

请注意,这个 udp 库只接收字节 [] 中的数据。

4

0 回答 0