json - 从 VB.Net 中的 Json 数组获取值
问题描述
在此先感谢我有一个如下所示的 json 数组
[
{
"Name": "abc",
"Age": "15",
"Gender": "M"
},
{
"Name": "def",
"Age": "16",
"Gender": "M"
},
{
"Name": "ghi",
"Age": "17",
"Gender": "M"
}
]
我需要提取数据,请指教
解决方案
这样的事情应该可以帮助您入门。
首先我们Person
像这样创建对象
Public Class Person
Public Property Name As String
Public Property Age As String
Public Property Gender As String
Public Overrides Function ToString() As String
Return "Name: " + Name + " Age: " + Age + " Gender: " + Gender
End Function
End Class
这将是我们存储persons 的属性。
我们还将覆盖,ToString()
以便在显示对象信息时获得所需的所有属性。
现在我们将Deserialize
有效载荷放入一个Person Array
使用Newtonsoft Json的库中,这是一个非常流行的库,可以帮助您完成 Json Data 所需的任何工作,您需要通过 Nuget 安装该包
Dim payload = "[{""Name"": ""abc"",""Age"": ""15"",""Gender"": ""M""},{""Name"": ""def"",""Age"": ""16"",""Gender"": ""M""},{""Name"": ""ghi"",""Age"": ""17"", ""Gender"": ""M""}]"
Dim personCollection() = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Person())(payload)
完成后,我们可以遍历其中的每个项目personCollection
并将结果显示到控制台。
For Each person As Person In personCollection
Console.WriteLine(person.ToString())
Next
希望这会有所帮助。我在这个例子中使用了一个控制台应用程序。
完整示例
Module Module1
Sub Main()
Dim payload = "[{""Name"": ""abc"",""Age"": ""15"",""Gender"": ""M""},{""Name"": ""def"",""Age"": ""16"",""Gender"": ""M""},{""Name"": ""ghi"",""Age"": ""17"", ""Gender"": ""M""}]"
Dim personCollection() = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Person())(payload)
For Each person As Person In personCollection
Console.WriteLine(person.ToString())
Next
Console.ReadKey()
End Sub
End Module
Public Class Person
Public Property Name As String
Public Property Age As String
Public Property Gender As String
Public Overrides Function ToString() As String
Return "Name: " + Name + " Age: " + Age + " Gender: " + Gender
End Function
End Class
推荐阅读
- python - 发送机器人也可以访问的频道
- flutter - Flutter:如何在流外访问数据和 NotifyListener
- python - AWS API 网关 + SQS + Lambda + 从 Lambda 获取响应到 API
- html - Bootstrap 5 - justifty-content-end 不工作
- sql - Oracle SQL REGEXP 用于在列之间查找值,无论它们的位置如何
- pandas - Pandas DataFrame read_csv 然后 GroupBy - 如何只获得一个计数而不是每列一个
- javascript - 我可以在 ejs 中定义一个 html 脚本元素吗?
- java - Spring Boot reactor 测试如何记录和检查 Flux 的测试
使用 StepVerifier 包含字符串 - node.js - puppeteer:如何循环遍历 nth-child 并根据条件做某事?
- java - 我可以“扩展”一个方法,或者在另一个方法中调用一个方法吗?