你如何阅读这种格式的数据?
How do you read this format of data?
我有以下一组数据(更大,我已经删减了)
[{
"title": "Brave",
"year": "2012",
"imdbid": "tt1217209",
"scid": "2"
}, {
"title": "The Watch",
"year": "2012",
"imdbid": "tt1298649",
"scid": "1"
}]
我希望能够得到 "title",例如 Brave 通过找到 scid : 2.
这与我熟悉的其他 Json 格式不相似,因为另一个儿子有父节点和子节点,但这个没有。
我需要做什么才能获得我需要的数据?
我只需要能够读取 vb.net
中的值
编辑:我相信这是 Javascript Json 格式?
您需要安装一个名为 Newtonsoft.json 的软件包,可以从 package manager console
安装,如下所示:
install-package Newtonsoft.json
并像这样包含它:
Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq
您的代码可能如下所示:
Dim json As String = line
Dim ser As JObject = JObject.Parse(json)
Dim data As List(Of JToken) = ser.Children().ToList
For Each item As JProperty In data
item.CreateReader()
Select Case item.Name
Case "metadata"
'MsgBox(item.Name)
Case "data"
For Each msg As JObject In item.Values
Dim scid As String = msg("scid")
Dim title As String = msg("title")
Next
End Select
Next
您可以参考 these 代码示例以获得更多示例,祝您好运。
对我来说,这似乎是一个非常标准和简单的 json。
你可以用这个简单的代码得到你的对象。
首先你有一个像这样的class
Class myObj
Public Property Title As String
Public Property year As Integer
Public Property imdbid As String
Public Property scid As Integer
End Class
然后用
得到它
Sub Main()
Dim input = File.ReadAllText("d:\temp\test2.json")
Dim list = JsonConvert.DeserializeObject(Of List(Of myObj))(input)
Dim obj = list.FirstOrDefault(Function(x) x.scid = 2)
Console.WriteLine(obj.Title)
End Sub
(当然,您需要在项目中引用一个 json 解析库,例如 newtonsoft.json,如其他答案中所述)
我有以下一组数据(更大,我已经删减了)
[{
"title": "Brave",
"year": "2012",
"imdbid": "tt1217209",
"scid": "2"
}, {
"title": "The Watch",
"year": "2012",
"imdbid": "tt1298649",
"scid": "1"
}]
我希望能够得到 "title",例如 Brave 通过找到 scid : 2.
这与我熟悉的其他 Json 格式不相似,因为另一个儿子有父节点和子节点,但这个没有。
我需要做什么才能获得我需要的数据? 我只需要能够读取 vb.net
中的值编辑:我相信这是 Javascript Json 格式?
您需要安装一个名为 Newtonsoft.json 的软件包,可以从 package manager console
安装,如下所示:
install-package Newtonsoft.json
并像这样包含它:
Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq
您的代码可能如下所示:
Dim json As String = line
Dim ser As JObject = JObject.Parse(json)
Dim data As List(Of JToken) = ser.Children().ToList
For Each item As JProperty In data
item.CreateReader()
Select Case item.Name
Case "metadata"
'MsgBox(item.Name)
Case "data"
For Each msg As JObject In item.Values
Dim scid As String = msg("scid")
Dim title As String = msg("title")
Next
End Select
Next
您可以参考 these 代码示例以获得更多示例,祝您好运。
对我来说,这似乎是一个非常标准和简单的 json。
你可以用这个简单的代码得到你的对象。
首先你有一个像这样的class
Class myObj
Public Property Title As String
Public Property year As Integer
Public Property imdbid As String
Public Property scid As Integer
End Class
然后用
得到它Sub Main()
Dim input = File.ReadAllText("d:\temp\test2.json")
Dim list = JsonConvert.DeserializeObject(Of List(Of myObj))(input)
Dim obj = list.FirstOrDefault(Function(x) x.scid = 2)
Console.WriteLine(obj.Title)
End Sub
(当然,您需要在项目中引用一个 json 解析库,例如 newtonsoft.json,如其他答案中所述)