阅读量:0
在C#中,可以使用以下方法对List进行序列化和反序列化:
- 使用Json.NET库(Newtonsoft.Json)进行序列化和反序列化:
using Newtonsoft.Json; using System.Collections.Generic; // 将List序列化为JSON字符串 string json = JsonConvert.SerializeObject(list); // 将JSON字符串反序列化为List List<T> deserializedList = JsonConvert.DeserializeObject<List<T>>(json);
- 使用BinaryFormatter进行序列化和反序列化:
using System.IO; using System.Runtime.Serialization.Formatters.Binary; using System.Collections.Generic; // 创建BinaryFormatter对象 BinaryFormatter formatter = new BinaryFormatter(); // 将List序列化为字节数组 using (MemoryStream stream = new MemoryStream()) { formatter.Serialize(stream, list); byte[] data = stream.ToArray(); } // 将字节数组反序列化为List using (MemoryStream stream = new MemoryStream(data)) { List<T> deserializedList = (List<T>)formatter.Deserialize(stream); }
请注意,使用BinaryFormatter进行序列化和反序列化会将数据保存为二进制格式,并且不易阅读,建议使用Json.NET库进行序列化和反序列化。