我正在用Python计算一个浮点值,我想把它发送回我的C#应用程序
因此,在Python中,我将float转换为bytearray,并按如下方式发送:
flaotToByte = struct.pack('!d', myFloat)
conn.send(flaotToByte)
在我的C#客户端,我收到bytearray并希望将其转换回float:
byte[] bytes = new byte[100];
int idxUsedBytes = client.Receive(bytes);
float res = BitConverter.ToSingle(bytes, 0);
在转换之前,当我在Python中打印浮点值时,它如下所示:
0.003890838631358603
但在我的客户方面,我目前的浮动是:
-0.000000000101606
这感觉它应该是超基本的,但我不明白为什么这不起作用。为了进行测试,我在Python中将bytearray直接转换回float,结果如下:
print(struct.unpack('!d', floatToByte))
>>>(0.003890838631358603,)
也许我的Python方面出了问题
目前没有回答
相关问题 更多 >
编程相关推荐