通过套接字接收原始十六进制并转换为字符串

Receive Raw HEX by socket and convert to string

我有以下问题,我尝试从 TCP/IP 套接字接收原始 HEX 值并将它们写在 txt 文件中,只是我在将此原始 HEX 数据转换为 UTF 时遇到了一些问题- 8 串。我正在使用以下方法:

TcpClient client = new TcpClient("192.168.200.91", 2101);
NetworkStream netStream = client.GetStream();
byte[] bytes = new byte[client.ReceiveBufferSize];
netStream.Read(bytes, 0, (int)client.ReceiveBufferSize);

string returndata = Encoding.UTF8.GetString(bytes);

using (var writer = new StreamWriter(@"C:\Users\ -\Documents\test.txt", false, Encoding.UTF8))
{
    writer.WriteLine(returndata);
}

这个 returns : *þý% ˆ ꇅ ÿ Œ7ºe B %û

如何成功读取原始十六进制数据并将其转换为可读字符串?

使用比特转换器:

TcpClient client = new TcpClient("192.168.200.91", 2101);
NetworkStream netStream = client.GetStream();
byte[] bytes = new byte[client.ReceiveBufferSize];
int bytesRead = netStream.Read(bytes, 0, (int)client.ReceiveBufferSize);

string returndata = BitConverter.ToString(bytes, 0, bytesRead).Replace("-", "")

using (var writer = new StreamWriter(@"C:\Users\ -\Documents\test.txt", false, Encoding.UTF8))
{
    writer.WriteLine(returndata);
}