我需要在字符串中转换这个字节:
var smallDCWBytes = new byte[]
{
0xFE, 0x00, 0x00, 0xEF, 0xFF, 0xF8, 0x24, 0x16, 0x01, 0x04, 0x00, 0x00, 0x66, 0x37, 0x58, 0xCA,
0xB8, 0x82, 0x00, 0x80, 0x53, 0x6D, 0x61, 0x6C, 0x6C, 0x20, 0x44, 0x43, 0x57, 0x20, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x64
};
var localDCWResponseText = System.Text.Encoding.ASCII.GetString(smallDCWBytes).Trim();
这是我收到的答案: “?\ 0 \ 0 ??? $ \ u0016 \ u0001 \ u0004 \ 0 \ 0f7X ??? \ 0?收到小DCW”
我只需要“收到小DCW”, 怎么做更好的方法呢?
答案 0 :(得分:1)
实际上它正在执行请求,因为它正在转换数组的每个字节。 您可以使用:
var smallDCWBytes = new byte[]
{
0x53, 0x6D, 0x61, 0x6C, 0x6C, 0x20, 0x44, 0x43, 0x57, 0x20, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x64
};
var localDCWResponseText = System.Text.Encoding.ASCII.GetString(smallDCWBytes);
或者,如果您被迫使用该数组,您可以执行以下操作:
var smallDCWBytes = new byte[]
{
0xFE, 0x00, 0x00, 0xEF, 0xFF, 0xF8, 0x24, 0x16, 0x01, 0x04, 0x00, 0x00, 0x66, 0x37, 0x58, 0xCA,
0xB8, 0x82, 0x00, 0x80, 0x53, 0x6D, 0x61, 0x6C, 0x6C, 0x20, 0x44, 0x43, 0x57, 0x20, 0x52, 0x65,
0x63, 0x65, 0x69, 0x76, 0x65, 0x64
};
var localDCWResponseText = System.Text.Encoding.ASCII.GetString(smallDCWBytes).Substring(21,18);