gpt4 book ai didi

c# - 如何在 C# 中将 JSON 字符串解析为名称值对

转载 作者:行者123 更新时间:2023-11-30 15:55:53 25 4
gpt4 key购买 nike

我必须将 JSON 字符串解析为名称值对列表:

{"vars":[
{"name":"abcd","value":"true"},
{"name":"efgh","value":"false"},
{"name":"xyz","value":"sring1"},
{"name":"ghi","value":"string2"},
{"name":"jkl","value":"num1"}
],"OtherNames":["String12345"]}

由于涉及多方,我无法添加对 newtonsoft JsonConvert 的引用。

使用JavaScriptSerializer,只有当我在string 中有一个值但不是数组

 JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
Dictionary<string,string> dict = jsSerializer.Deserialize<Dictionary<string, string>>(jsonText);

我认为说我将获取数组值的声明在某处丢失了。

最佳答案

您不能将该 Json 反序列化为 Dictionary<string, string> .因为 json 包含两个不同的数组,你应该使用复杂的对象来反序列化它;

public class Var
{
public string name { get; set; }
public string value { get; set; }
}

public class SampleJson
{
public List<Var> vars { get; set; }
public List<string> OtherNames { get; set; }
}


JavaScriptSerializer jsSerializer = new JavaScriptSerializer();
var sampleJson = jsSerializer.Deserialize<SampleJson>(jsonText);

关于c# - 如何在 C# 中将 JSON 字符串解析为名称值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47791613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com