在c#中创建数据包

Sor*_*avi 1 c# string hex

我想创建一个数据包并将其写入套接字.
该数据包以'C0'十六进制值开头.
在php中我可以使用以下代码轻松创建它:

$a = "\xC0";  
Run Code Online (Sandbox Code Playgroud)

现在我想用c#创建它.怎么办呢?

Ken*_*rey 7

在C#中,字符串是Unicode编码的,因此不应将它们用于二进制数据.而是使用字节数组.

要创建以C0开头的字节数组,请执行以下操作:

byte[] packet = new byte[] { 0xC0, /* Other values */ };
Run Code Online (Sandbox Code Playgroud)

如果您有要发送的现有字符串,则可以使用Encoding.ASCII它将其转换为所需的字节数.