C#解析JSON在今天的應(yīng)用中已成為一項(xiàng)非常重要的技術(shù),下面我們來(lái)舉一個(gè)簡(jiǎn)單的例子:
using Newtonsoft.Json; using System; using System.Collections.Generic; public class Person { public string Name { get; set; } public int Age { get; set; } public ListHobbies { get; set; } } class Program { static void Main(string[] args) { string json = @"{'Name':'Tom', 'Age':26, 'Hobbies':['reading', 'playing basketball']}"; Person p = JsonConvert.DeserializeObject<Person>(json); Console.WriteLine(p.Name); Console.WriteLine(p.Age); Console.WriteLine(string.Join(",", p.Hobbies)); } }
在這個(gè)例子中,我們定義了一個(gè)Person類(lèi),包含了姓名、年齡和愛(ài)好三個(gè)屬性。我們使用Newtonsoft.Json第三方庫(kù)中的JsonConvert類(lèi),將Json字符串轉(zhuǎn)換為Person對(duì)象,并輸出其中的屬性。當(dāng)然,在輸出愛(ài)好時(shí),我們將其用string.Join方法拼接成了一個(gè)字符串。
需要注意的是,我們?cè)赑erson類(lèi)中添加屬性時(shí),要根據(jù)Json字符串中的名稱命名。在這個(gè)例子中,Json字符串中的名稱是Name、Age和Hobbies,所以我們?cè)赑erson類(lèi)中定義的屬性也必須與其保持一致,否則轉(zhuǎn)換時(shí)將無(wú)法獲取對(duì)應(yīng)屬性的值。
此外,在實(shí)際使用中,我們還需要考慮一些異常情況,比如Json字符串為空、格式不正確等等。所以在解析Json時(shí),一定要仔細(xì)、謹(jǐn)慎。