问题描述
我正在用Python计算浮点值,我想将其发送回C#应用程序。
因此,在Python中,我将浮点数转换为字节数组,并像这样发送:
flaottoByte = struct.pack('!d',myFloat)
conn.send(flaottoByte)
在C#客户端上,我收到字节数组,并想将其转换回浮点数:
byte[] bytes = new byte[100];
int idxUsedBytes = client.Receive(bytes);
float res = BitConverter.ToSingle(bytes,0);
当我在转换之前在Python中打印浮点数时,它看起来像这样:
0.003890838631358603
但是在我的客户方面,我的浮动资产目前是这样的:
-0.000000000101606
这似乎应该是非常基础的,但是我不知道为什么这不起作用。为了进行测试,我将我的字节数组转换回直接在Python中浮动,然后得到了以下结果:
print(struct.unpack('!d',floatToByte))
>>>(0.003890838631358603,)
那么也许我的Python方面出了问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)