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 關鍵字。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
C#搜索TreeView子節(jié)點,保留父節(jié)點的方法
這篇文章主要介紹了C#搜索TreeView子節(jié)點,保留父節(jié)點的方法,實例分析了C#操作TreeView節(jié)點的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-09-09