C#-解码服务器响应(一个字符串中有多少个位置是一个八位字节?)

C#-解码服务器响应(一个字符串中有多少个位置是一个八位字节?),c#,sockets,hex,C#,Sockets,Hex,我正在通过套接字与服务器通信。在这里,我发送命令并从该服务器接收响应 要解码来自服务器的响应,我将使用以下命令: string returndata=BitConverter.ToString(bytesToRead,0,bytesRead) .替换(“-”,”) 完成服务器响应: 404040404040404041414141414141414141414141404040404040404040404040404040404040404040404040404040404041414141

我正在通过套接字与服务器通信。在这里,我发送命令并从该服务器接收响应

要解码来自服务器的响应,我将使用以下命令:

string returndata=BitConverter.ToString(bytesToRead,0,bytesRead) .替换(“-”,”)

完成服务器响应:

4040404040404040414141414141414141414141414040404040404040404040404040404040404040404040404040404040414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414140404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404040404023430CC91B437A462243004EE414038704201000000000000000E000000005073F0C22E3AEF425073F0C28152F0C22E3AEFC2FDC7A43F519C783F62BCA13F0000000000000000000000000000000000FBC002000004

从这个回答中,我需要提取信息,手册中说:

从八位字节052到055:有功功率相位A(IEEE浮点-754 (32位)

假设1个八位组是2个位置(我不确定)。然后从八位元52到55,结果将是:0D8936C9。我相信这是一个十六进制数。转换为浮点:8.45


这是真的还是我做错了?

如何使用
位转换器。直接使用
bytesToRead
转换为Single
,并将52作为位置?(最终,您必须将子数组从52恢复到55,并将其还原并使用ToSingle-如果涉及到endianness),它相当于8996840或9968400D(如果指令说八位字节是基于0的)。。。八位组是1,我得到不同的结果。字节的顺序是什么?float num=BitConverter.ToSingle(新字节[]{0x0D,0x89,0x36,0xC9},0);嗨,塞尔文。一个字节有多少个位置?我将测试你发布的内容。Selvin,BitConverter.ToSingle解决了我的问题。谢谢