2011-12-14 7 views
1

ゲームサーバーに接続したいと思います。
ヘッダー部分でブロックされます。

EX)は、PHPコードのJSON型というC#のコードpack("s",strlen($str))$strに変換する方法php pack( 's')メソッドでC#コードに変換する方法

$obj = new stdClass; 
$obj->variable1  = 202; 
$obj->variable2  = 123; 
$str = json_encode($obj); 
$header = "\x0a\xFF\x00\x10".pack("s",strlen($str)).$str; 

..... 

fwrite($sock, $header); 

t.t私を助けて。

答えて

1

だからあなたは次のように、その後、JSONエンコーディングを行うためにjson.netを使用することができます。

var obj  = new StandardClass { variable1 = 202, variable2 = 123 }; 
var initial = JsonConvert.SerializeObject(obj); 
var header = "\x0a\xff\x00\x10" + initial.Length.ToString("X") + initial; 
... 
socket.Write(header); 
+0

新しいStandardClass {変数1 = 202、変数2 = 123}; new {variable1 = 202、variable2 = 123}; は等しいですか? – user1096957

+0

new StandardClassは、StandardClassの新しいインスタンスを作成し、オブジェクトの初期化形式を使用してプロパティを設定します。 2つ目は実際には同じ変数名を持つ匿名型を作成します。それらは同じjsonにエンコードする必要がありますが、2つは等しくはありません。 – Bashwork

関連する問題