色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c# 復雜json 反序列化

方一強2年前8瀏覽0評論

C#是一種流行的面向對象編程語言,它可以用來解析JSON字符串。當JSON字符串很復雜時,反序列化可能會變得更加具有挑戰性。下面是一個展示如何在C#中反序列化復雜JSON字符串的示例。

using System;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
class Program {
static void Main(string[] args) {
string jsonString = @"
{
'name': 'John Doe',
'age': 32,
'email': 'johndoe@example.com',
'address': {
'street': '123 Main St',
'city': 'New York',
'state': 'NY',
'zip': '10001'
},
'phoneNumbers': [
{
'type': 'home',
'number': '555-1234'
},
{
'type': 'work',
'number': '555-5678'
}
]
}
";
JObject json = JObject.Parse(jsonString);
string name = (string)json["name"];
int age = (int)json["age"];
string email = (string)json["email"];
JObject address = (JObject)json["address"];
string street = (string)address["street"];
string city = (string)address["city"];
string state = (string)address["state"];
string zip = (string)address["zip"];
JArray phoneNumbers = (JArray)json["phoneNumbers"];
foreach (JObject phoneNumber in phoneNumbers) {
string type = (string)phoneNumber["type"];
string number = (string)phoneNumber["number"];
}
Console.WriteLine("Name: " + name);
Console.WriteLine("Age: " + age);
Console.WriteLine("Email: " + email);
Console.WriteLine("Street: " + street);
Console.WriteLine("City: " + city);
Console.WriteLine("State: " + state);
Console.WriteLine("Zip: " + zip);
}
}

在這個示例中,我們首先將JSON字符串轉換為JObject對象。然后,通過使用索引運算符來訪問JSON對象的屬性來提取JSON數據。對于嵌套對象,我們可以使用JObject類型來訪問它們的屬性。對于嵌套數組,我們可以使用JArray類型來獲取它們的值。

反序列化復雜的JSON字符串可能會變得更加具有挑戰性,但是使用C#和Newtonsoft.Json庫,我們可以輕松地處理任何JSON數據。