解析对象内数组中的 JSON 值



我在.net中使用Newtonsoft来解析json内容,并希望我实际上对此进行了更好的研究。我创建了一个 obj 来解析字符串文本,方法是将所有子项列出到 JTOkens 列表中,然后从每个 JProperty 中获取各个值。但是现在我需要捕获一个值列表,但不确定如何做到这一点。

 Dim jobj As JObject = JObject.Parse(msg.Body.ToString())
 Dim results As List(Of JToken) = jobj.Children().ToList
 For Each item As JProperty In results
            item.CreateReader()
            If item.Name = "id" Then
                statid = item.Value
            End If
 etc...

但是现在我在对象中找到以下项目,需要所有"值"和"标签"

{"results":
 {
 {
   "language": {
   "value": "ja"
},
"matching_results": [
{
  "value": "iPhone5",
  "tag": "JOE"
},
{
  "value": "iPhone5",
  "tag": "BOB"
}
],}

我在处理 JSON 时遇到了同样的问题,我找到了这个解决方案:-

function jsonParse(data)
{
  if(typeof data=='object')
  {
    for(var obj in data)
    {
      if(obj=='value')
      {
        console.log('value---',data[obj])
      }
      else if(obj=='tag')
      {
        console.log('tag---',data[obj])
      }
      jsonParse(data[obj])
    }
  }      
}

请删除带有您的变量的所有控制台,希望这会对您有所帮助。

这只是将

对象分解为标记并将值读取到列表中的问题。

 Dim tags As List(Of JToken) = 
 item.Last.SelectToken("matching_results").Children()("tag").ToList

相关内容

  • 没有找到相关文章

最新更新