通过JSON与NewtonSoft一起循环

时间:2017-10-02 14:24:28

标签: asp.net json vb.net json.net

我的JSON文件中有超过6,300条消息。我的JSON格式如此......

{ "messages":[
  {
    "id": ...
  }
...
]}

我正在尝试使用NewtonSoft使用此代码遍历此JSON文件中的每条消息...

Dim jObj As JObject = JObject.Parse(File.ReadAllText(outputJSONpath & "myFileName.json"))
Dim jArr As New JArray(jObj("messages"))
For Each message As JObject In jArr.Children(Of JObject)()
    'Do work
Next

当我做jArr.Children(Of JObject)().Count时,我得到0.我希望看到计数为6,300。在直接窗口中,我看到jObj和jArr的有效对象。我以前成功地使用过与此类似的代码,但我无法弄清楚这里有什么问题。我在jsonlint.com上验证了我的JSON是有效的,也许我认为我已经损坏了JSON。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

由于messages是一个JArray,你只需要施放它:

Dim jArr As JArray = CType(jObj("messages"), JArray)