2016-11-30 15 views
-1

に私は次のJSON表示/逆シリアル化JSON文字列

[[["Hello","Hola",,,1]],,"es"] 

にはどうすれば「こんにちは」この場合には、最初のオブジェクトを取得することができますか? JSON.NETを使用して

+1

これは有効なJSONではありません。同じ配列に文字列と整数の両方があります。タイプは重要で、最初にあるはずのタイプを知っていますか? – Dispersia

+0

次のURLからの出力結果:https://translate.googleapis.com/translate_a/single?client=gtx&sl=es&tl=en&dt=t&q=Hola – Baker1562

+2

新しいAPIに行くことをお勧めします。https://cloud.google .com/translate/docs/translating-text#translate-translate-text-protocol jsonは無効であり、非常に不安定に見えます。 – Dispersia

答えて

3

は、例えば、あなたはこれを行うことができます。

var jsonObject = JsonConvert.DeserializeObject<JArray>("[[[\"Hello\",\"Hola\",,,1]],,\"es\"]"); 
string value = (string)((JValue)jsonObject[0][0][0]).Value; 
Console.WriteLine(value); 
+0

これは有効なjsonのようです:)良いキャッチ – mybirthname

+0

@mybirthnameまだ有効ではありませんが、jsonconvertはこれを行うことでプレーンなオブジェクトの配列を作成します。したがって、型が変更された場合、誰が他に何が戻ってくるかもしれない、あるいは戻らないかも知っていない)。しかし私は単純にupvoteそれは私たちの知識の最高の質問に答えるためです。 – Dispersia

+0

ありがとうございます – Baker1562

関連する問題