C#的二进制序列化文件
时间: 2024-09-14 09:15:14 浏览: 44
在C#中,二进制序列化是一种将对象转换成字节流的过程,以便可以存储到文件中或通过网络传输。这种操作允许你在需要的时候恢复对象的状态,而无需知道其具体的实现细节。C#提供了一个名为`System.Runtime.Serialization`的命名空间,其中包含`BinaryFormatter`类用于进行二进制序列化。
以下是创建和读取二进制序列化文件的基本步骤:
1. **序列化(保存对象)**:
- 创建一个对象。
- 创建一个`BinaryFormatter`实例。
- 使用`Serialize`方法将对象转换为字节数组并写入文件。
```csharp
object obj = new MyClass();
using (FileStream stream = File.Create("data.bin"))
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, obj);
}
```
2. **反序列化(从文件加载对象)**:
- 打开文件。
- 使用`Deserialize`方法从字节数组中重构对象。
```csharp
using (FileStream stream = File.OpenRead("data.bin"))
{
BinaryFormatter formatter = new BinaryFormatter();
object deserializedObj = formatter.Deserialize(stream);
}
```
阅读全文