-1

我有一个非常简单的 JSON 数组,我想将它转换为 VB.NET 数组。JSON是:

{"UPTIME": "UNKNOWN", "VERSION ": 2.0, "SENDTIME": "03:33:52",  "SENDDATE": "28- 12-2012", "HOSTNAME": "My-PC"}

在这种情况下[0]="UNKNOWN", [1]=2.0,[2]=03:33:52等。

我已经阅读了以前的问题,我只是变得更加困惑,而且它们似乎都是针对比我所拥有的更复杂的 json 示例。我正在使用 Newtonsoft.Json 库,因为它似乎被推荐了很多,但我不明白它是如何工作的。

4

3 回答 3

0

您可以使用 Json.Net 一个 .Net JSON 转换器库。从我所见,您应该能够将字符串转换为 Json 对象,然后您可以编写一个 cast 方法来从该 JSON 对象的成员构建一个数组。

http://json.codeplex.com/

于 2012-12-29T20:21:09.330 回答
0

我最终通过随机实验得到了它,这产生了一个包含值的字典,它足够接近,所以我可以创建我想要的变量,而不必使用我认为我必须使用的 VB.NET 数组我希望这个帮助他人:

进口:

Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq

声明的变量:

Dim json As String 'this is the string of json data that needs decoding
Dim version As String
Dim obj As New JObject

转换代码:

json = '{"UPTIME": "UNKNOWN", "VERSION ": 2.0, "SENDTIME": "03:33:52",  "SENDDATE": "28- 12-2012", "HOSTNAME": "My-PC"}'
Dim deserializedProduct As Object = JsonConvert.DeserializeObject(Of Object)(json)
obj = JsonConvert.DeserializeObject(recv)
uptime = obj.Item("UPTIME").ToString
version = obj.Item("VERSION").ToString
Console.WriteLine(uptime)
Console.WriteLine(version)

结果:

UNKNOWN
2
于 2012-12-31T01:10:19.277 回答
0

我没有使用过任何这些,所以我不知道它的用处。.net System.Runtime.Serialization.Json内置了一个 Json 序列化程序类

于 2012-12-31T14:41:31.300 回答