C#中的JSON數(shù)組是一種非常常見的數(shù)據(jù)類型,它可以存儲各種類型的對象并以Json格式進行序列化和反序列化。在本文中,我們將介紹C# Json數(shù)組的一些基本概念和用法。
創(chuàng)建一個C# Json數(shù)組很簡單。我們可以使用JArray類,在其構(gòu)造函數(shù)中傳入一組對象,例如:
JArray array = new JArray(new JObject( new JProperty("name", "John"), new JProperty("age", 32)), new JObject( new JProperty("name", "Mary"), new JProperty("age", 28)));
在上面的代碼中,我們創(chuàng)建了一個包含兩個對象的Json數(shù)據(jù)。這兩個對象都包含一個名為“name”的屬性和一個名為“age”的屬性。在實際編程中,我們還可以通過添加相應(yīng)的元素來更靈活地創(chuàng)建Json數(shù)組。
接下來,讓我們看一下如何將Json數(shù)組序列化為字符串。我們可以使用JsonConvert類的SerializeObject方法:
string json = JsonConvert.SerializeObject(array);
上面的代碼將Json數(shù)組對象array轉(zhuǎn)換為字符串,并將其存儲在json變量中。
反過來,如果我們要將一個Json字符串反序列化為C#對象,我們可以使用JsonConvert類的DeserializeObject方法。例如:
JArray array = JsonConvert.DeserializeObject<JArray>(json);
上面的代碼將json字符串轉(zhuǎn)換為JArray對象。
其他常用的C# JSON數(shù)組操作包括添加和刪除元素、訪問數(shù)組元素等。
以下是一個完整的示例程序,它創(chuàng)建了一個Json數(shù)組,并將其序列化為字符串,然后將其反序列化為C#對象:
using System; using Newtonsoft.Json; using Newtonsoft.Json.Linq; class Program { static void Main(string[] args) { JArray array = new JArray(new JObject( new JProperty("name", "John"), new JProperty("age", 32)), new JObject( new JProperty("name", "Mary"), new JProperty("age", 28))); string json = JsonConvert.SerializeObject(array); Console.WriteLine(json); JArray array2 = JsonConvert.DeserializeObject<JArray>(json); Console.WriteLine(array2); } }