从字节读取数据包ID

时间:2011-02-02 01:42:19

标签: vb.net ascii byte character

我有一个数据包需要发送到ID为255的客户端。我在发送ID为0,1和2的数据包时没有问题.ID必须是255.由于某种原因,翻译发生后,我的服务器和客户端都获得“63”,任何大于127的Id。

这是我正在使用的代码:

Console.WriteLine(Asc(System.Text.ASCIIEncoding.ASCII.GetString(System.Text.ASCIIEncoding.ASCII.GetBytes(Chr("255")))))

现在,这是服务器所做的过于复杂的版本。您可能会认为这有点不必要,但执行的反函数仅供您查看。

其中说“255”是我需要以上述格式发送的数据包ID。正如我所说,任何大于127的东西都会返回“63”。非常烦人。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

取自here

ASCIIEncoding对应于Windows代码页20127.由于ASCII是7位编码,因此ASCII字符限制为最低的128个Unicode字符,从U + 0000到U + 007F。

因此您无法使用该技术,因为255不是有效的ASCII字符。