[英]Parse json using Newtonsoft
在下面的 json 示例中,我在解析和訪問我想要的數據時遇到問題。
我想為每個項目記錄檢索 HeroName 和 HeroAmount :
我知道我可以序列化並表現為一個數組,但我無法訪問提到的數據。
{"id":"Main","name":"MAP","data":{},"children":
[
{
"id":"ID_2317",
"HeroName":"Name1322",
"children":
[
{
"id":"ID_23317_1",
"name":"Name_1",
"data":
{
"HeroAmount":231979
}
}
]
},
{
"id":"ID_2318",
"HeroName":"Name1323",
"children":
[
{
"id":"ID_23318_1",
"name":"Name_2",
"data":
{
"HeroAmount":231977
}
}
]
}
]
}
你可以這樣做:
Dim strBuf As String = File.ReadAllText("c:\test4\json5.txt")
Dim jOb As JObject = JObject.Parse(strBuf)
Dim MyChildren As JToken = jOb.SelectToken("children")
For Each MyChild As JToken In MyChildren
Debug.Print("Hero Name = " & MyChild.SelectToken("HeroName"))
Debug.Print("Hero Amount = " & MyChild.SelectToken("children[0].data.HeroAmount"))
Next
因此,“走”json 非常簡單。
因此,在循環內部:
Debug.Print("Hero Name = " & MyChild.SelectToken("HeroName").ToString)
Debug.Print("Hero Amount = " & MyChild.SelectToken("children[0].data.HeroAmount").ToString)
Debug.Print("--")
Output:
Hero Name = Name1322
Hero Amount = 231979
--
Hero Name = Name1323
Hero Amount = 231977
--
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.