JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,常用于前后端數(shù)據(jù)交互。C#是一種面向?qū)ο蟮木幊陶Z(yǔ)言,支持JSON的解析和生成。
在C#中,可以使用Newtonsoft.Json庫(kù)來(lái)對(duì)JSON進(jìn)行操作。使用該庫(kù)可以方便地解析JSON數(shù)據(jù)并將其轉(zhuǎn)換為C#對(duì)象。
// 解析JSON string jsonData = @"{ 'name': 'John', 'age': 30, 'email': 'john@example.com' }"; JObject jsonObject = JObject.Parse(jsonData); string name = (string)jsonObject["name"]; int age = (int)jsonObject["age"]; string email = (string)jsonObject["email"]; // 遍歷JSON JObject jsonObj = JObject.Parse(jsonData); foreach (var item in jsonObj) { Console.WriteLine(item.Key + ": " + item.Value); }
在上述代碼中,首先使用JObject.Parse方法將JSON數(shù)據(jù)轉(zhuǎn)換為JObject對(duì)象,然后可以通過(guò)鍵值對(duì)的方式訪問(wèn)JSON中的屬性值。其中,可以使用for循環(huán)遍歷JSON對(duì)象的所有屬性。
除了JObject對(duì)象,還可以使用JArray對(duì)象來(lái)處理JSON數(shù)組:
// 解析JSON數(shù)組 string jsonArrayData = @"[ { 'name': 'John', 'age': 30, 'email': 'john@example.com' }, { 'name': 'Jane', 'age': 25, 'email': 'jane@example.com' } ]"; JArray jsonArray = JArray.Parse(jsonArrayData); foreach (var item in jsonArray) { Console.WriteLine(item["name"] + ", " + item["age"] + ", " + item["email"]); }
以上就是使用C#遍歷JSON的方法,通過(guò)Newtonsoft.Json庫(kù)可以方便地進(jìn)行JSON數(shù)據(jù)的解析和操作。