C# 序列化一个list对象
时间: 2024-09-24 12:14:30 浏览: 35
在 C# 中,序列化是一个将对象转换成字节流的过程,以便存储或在网络上传输。如果你有一个 List 对象需要保存,可以使用 System.Runtime.Serialization 命名空间下的序列化功能。以下是如何序列化和反序列化一个 List 的简单步骤:
1. 引入必要的命名空间:
```csharp
using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
```
2. 定义一个包含你要序列化的数据的 List 类型:
```csharp
List<int> numbers = new List<int>() { 1, 2, 3, 4, 5 };
```
3. 创建一个 BinaryFormatter 实例来进行序列化:
```csharp
BinaryFormatter formatter = new BinaryFormatter();
```
4. 序列化到文件:
```csharp
string filePath = "numbers.bin";
using (FileStream stream = File.Create(filePath))
{
formatter.Serialize(stream, numbers);
}
```
5. 反序列化从文件恢复数据:
```csharp
List<int> deserializedNumbers;
using (FileStream stream = File.OpenRead(filePath))
{
deserializedNumbers = (List<int>)formatter.Deserialize(stream);
}
```
阅读全文