c#如何获取json数组里指定参数
作者:ZyLL_123
这篇文章主要介绍了c#如何获取json数组里指定参数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
c#获取json数组里指定参数
json格式如图
我要获取items里的positive_prob这个int型的值
分解json,responseString是如上图格式:
JObject jsonObj = JObject.Parse(responseString);
分解后的jsonObj格式如图
指定数据为数组
JArray item = JArray.Parse(jsonObj["items"].ToString()); string positive = item[0]["positive_prob"].ToString();
成功!
c#读取json文件
C# 读取 JSON 文件并读取某一个关键字的值可以使用 Newtonsoft.Json 库。
假设我们的 JSON 文件如下所示:
{ "name": "Alice", "age": 25, "is_student": true, "hobbies": [ "reading", "travelling" ] }
要读取其中的某一个关键字的值,首先需要定义一个对应的实体类来存储 JSON 数据。
例如,可以定义以下类:
public class Person { public string Name { get; set; } public int Age { get; set; } public bool IsStudent { get; set; } public List<string> Hobbies { get; set; } }
然后,可以使用以下代码读取 JSON 文件,并将其反序列化为 Person 类型的对象:
using Newtonsoft.Json; using System.IO; // 读取 JSON 文件 string jsonFilePath = "example.json"; using (StreamReader sr = new StreamReader(jsonFilePath)) { string json = sr.ReadToEnd(); // 解析 JSON 字符串 var person = JsonConvert.DeserializeObject<Person>(json); // 获取某一个关键字的值 Console.WriteLine(person.Name); }
在此代码中,我们首先使用 StreamReader 打开 JSON 文件,并将其读入一个字符串中。然后,我们使用 JsonConvert.DeserializeObject<Person>() 函数对这个字符串进行反序列化,得到一个 Person 类型的对象 person,通过 person 对象可以访问 JSON 数据中的各种信息,例如获取 name 关键字的值可以使用 person.Name。
需要注意的是,以上示例中的代码只是最基本的读取 JSON 文件并获取某一个关键字的值的方法。
如果要读取包含更复杂结构的 JSON 文件,还需要进一步了解和熟悉 Newtonsoft.Json 库中的各种操作和函数。
此外,如果 JSON 数据中的某个关键字的名称与 C# 中的保留关键字相同,可以在实体类中给该属性加上 [JsonProperty("keyName")] 的特性来指定该属性对应的 JSON 关键字。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。