【发布时间】:2019-05-03 14:14:24
【问题描述】:
经过几个小时的搜索和尝试,有人可以帮我解决这个简单的问题吗:
我有以下 JSON 字符串:
[
{
"key": 1234,
},
{
"key": 9876,
}
]
如何读取此 JSON 并将所有值写入列表?
目前尝试了很多次,但请看以下代码:
List<int> content = new List<int>;
var json = reader.ReadToEnd();
var obj = JObject.Parse(json);
第一次尝试:
foreach(var key in obj)
{
content.Add((int)obj["key"]);
}
其他尝试:
var token = obj.SelectToken("key");
foreach(var item in token)
{
content.Add(JsonConvert.DeserializeObject<int>(item.value));
}
还是这样?
foreach(var key in obj)
{
content.Add(Int32.Parse(obj.GetValue("key").ToString()));
}
尝试运行最后一次尝试时,我收到以下错误消息:
Error reading JObject from JsonReader. Current JsonReader item is not an object: StartArray.
即使 JSON 如下所示:
[{\"key\":9999},{\"key\":9876}]
每一个答案都会很高兴。
最好的问候
【问题讨论】:
标签: c# json list serialization