温馨提示×

c# jarray能进行序列化吗

c#
小樊
86
2024-11-22 01:04:48
栏目: 编程语言

在C#中,JArray是Newtonsoft.Json库中的一个类,用于表示JSON数组。虽然它本身不能直接进行序列化,但你可以使用Newtonsoft.Json库中的JsonConvert类来序列化和反序列化JSON数组。

以下是一个简单的示例,展示了如何使用JsonConvert类将C#对象序列化为JSON数组,以及如何将JSON数组反序列化为C#对象:

using Newtonsoft.Json;
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        // 创建一个C#对象列表
        List<Person> people = new List<Person>
        {
            new Person { Name = "John", Age = 30 },
            new Person { Name = "Jane", Age = 28 }
        };

        // 将C#对象列表序列化为JSON数组
        string jsonArray = JsonConvert.SerializeObject(people);
        Console.WriteLine("Serialized JSON array:");
        Console.WriteLine(jsonArray);

        // 将JSON数组反序列化为C#对象列表
        List<Person> deserializedPeople = JsonConvert.DeserializeObject<List<Person>>(jsonArray);
        Console.WriteLine("\nDeserialized C# object list:");
        foreach (Person person in deserializedPeople)
        {
            Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
        }
    }
}

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

在这个示例中,我们首先创建了一个包含两个Person对象的列表。然后,我们使用JsonConvert.SerializeObject方法将列表序列化为JSON数组。接下来,我们使用JsonConvert.DeserializeObject方法将JSON数组反序列化为一个新的Person对象列表。

0