在C#中,要对ArrayList进行反序列化,首先需要将序列化的数据存储在一个文件中,例如JSON格式。然后,可以使用System.IO.File
类和Newtonsoft.Json
库来读取和解析这个文件,最后将解析后的数据转换回ArrayList对象。以下是一个简单的示例:
Install-Package Newtonsoft.Json
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
using System;
using System.Collections.ArrayList;
using Newtonsoft.Json;
class Program
{
static void Main()
{
ArrayList people = new ArrayList();
people.Add(new Person { Name = "John", Age = 30 });
people.Add(new Person { Name = "Jane", Age = 28 });
string json = JsonConvert.SerializeObject(people);
Console.WriteLine("Serialized ArrayList: " + json);
}
}
using System;
using System.Collections.ArrayList;
using Newtonsoft.Json;
class Program
{
static void Main()
{
string json = "[{\"Name\":\"John\",\"Age\":30},{\"Name\":\"Jane\",\"Age\":28}]"; // 这是从文件或网络中读取的序列化数据
ArrayList people = JsonConvert.DeserializeObject<ArrayList>(json);
Console.WriteLine("Deserialized ArrayList:");
foreach (Person person in people)
{
Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}
}
}
这个示例中,我们首先创建了一个包含两个Person对象的ArrayList,并将其序列化为JSON字符串。然后,我们将这个JSON字符串反序列化为一个新的ArrayList对象,并输出其内容。