在C#中,可以使用BinaryFormatter类来序列化和反序列化ArrayList对象。
序列化ArrayList对象的方法如下:
using System;
using System.Collections;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
class Program
{
static void Main()
{
ArrayList list = new ArrayList();
list.Add("Hello");
list.Add("World");
BinaryFormatter formatter = new BinaryFormatter();
using (FileStream fileStream = new FileStream("list.dat", FileMode.Create))
{
formatter.Serialize(fileStream, list);
}
}
}
反序列化ArrayList对象的方法如下:
using System;
using System.Collections;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
class Program
{
static void Main()
{
BinaryFormatter formatter = new BinaryFormatter();
using (FileStream fileStream = new FileStream("list.dat", FileMode.Open))
{
ArrayList list = (ArrayList)formatter.Deserialize(fileStream);
foreach (var item in list)
{
Console.WriteLine(item);
}
}
}
}
在上面的示例中,我们首先创建一个ArrayList对象并将其序列化到文件"list.dat"中。然后我们再从文件中反序列化这个ArrayList对象,并输出其中的元素内容。