我想創建一個數據包並將其寫入套接字。
該數據包以'C0'十六進制值開始。
在PHP中我可以輕鬆地使用此代碼創建它:在c#中創建數據包#
$a = "\xC0";
現在我想在C#創建它。如何做到這一點?
我想創建一個數據包並將其寫入套接字。
該數據包以'C0'十六進制值開始。
在PHP中我可以輕鬆地使用此代碼創建它:在c#中創建數據包#
$a = "\xC0";
現在我想在C#創建它。如何做到這一點?
在C#中,字符串是Unicode編碼的,所以您不應該將它們用於二進制數據。而是使用一個字節數組。
要創建一個字節數組開始C0,做這樣的事情:
byte[] packet = new byte[] { 0xC0, /* Other values */ };
如果你有,你要發送一個現有的字符串,可以使用將其轉換到你所需要的字節數。
@ user1488521:這是否回答您的問題?如果確實如此,請將其標記爲答案,以便人們知道問題已得到解答。 –
是的,但我不能做到這一點,因爲我的信譽度低: –
您不需要任何聲譽就可以回答。點擊答案左邊的複選圖標。 –
如果要發送它容易字節:
byte a = 0xC0;
如果數據包包含文本,你就可以開始一個字符串:
string a = "\xC0";
有關字符串文字的詳細信息:http://msdn.microsoft.com/en-us/library/aa691090(v=vs.71).aspx
它不工作不幸... –
你會想要了解byte []和字符串轉換 – kenny
同樣我想,你試過了嗎? – ekholm