2016-04-28 21 views
1

次のデータを持つJSONファイルがあります。私はちょうど "命名"と "ユニット"のデータを取得したい。 VB.netでこれを行う方法を私に助けてください? C#の場合VB.netでJSON配列やオブジェクトの値を取得するには?

[ 
     { 
      "customerId": "999", 
      "deviceId": "XXX999", 
      "searchDeviceId": "D_XXX999", 
      "utc": "2016-04-28T03:37:00.000Z", 
      "lat": 22.5691, 
      "lng": 120.3058, 
      "sensors": [ 
       { 
        "naming": "ABC123", 
        "factor": null, 
        "unit": "k", 
        "period": null 
       }, 
       { 
        "naming": "XYZ123", 
        "factor": null, 
        "unit": "c", 
        "period": null 
       }, 
       . 
       . 
       . 
       . 
       . 
      ] 
     } 
    ] 

答えて

1

JObject jResults = JObject.Parse("JsonString"); 
String naming = jResults["sensors"]["naming "]; 
String unit = jResults["sensors"]["unit "]; 

VBの場合:

Dim jResults As JObject = JObject.Parse("JsonString") 
Dim naming As [String] = jResults("sensors")("naming ") 
Dim unit As [String] = jResults("sensors")("unit ") 

あなたは、このように達成することができます。

+0

あなたの答えをありがとうが、私はこのエラーが発生している[Newtonsoft.Json.JsonTeaderException:JsonReaderからJObjectを読み込む際のエラー。現在のJsonReaderアイテムはオブジェクトではありません:StartArray。パス '、1行目、1桁目]。私はJArrayに変更しましたが、まだエラーが発生しています[System.ArgumentException:無効なキー値でアクセスされたJArray値: "sensors" .Int32配列インデックスexpexted] – NajLinus

+0

newtonsoft.dllを追加しましたか? –

+0

JArray jResults = JArray.Parse( "JsonString"); var tem = jResults [0] ["sensors"] ["naming"]。ToString(); –