📅  最后修改于: 2023-12-03 15:13:52.400000             🧑  作者: Mango
在C#编程中,我们通常需要将对象或类转换为字节数组以进行传输或持久化。在本指南中,我们将介绍如何将C#类转换为字节数组,并提供代码示例和解释。
在C#中,可以使用BinaryFormatter类将对象序列化为字节数组。以下是将C#类序列化为字节数组的示例代码:
using System;
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;
[Serializable]
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int Age { get; set; }
}
class Program
{
static void Main(string[] args)
{
Person person = new Person
{
FirstName = "John",
LastName = "Doe",
Age = 30
};
byte[] buffer;
BinaryFormatter formatter = new BinaryFormatter();
using (MemoryStream stream = new MemoryStream())
{
formatter.Serialize(stream, person);
buffer = stream.ToArray();
}
}
}
上述示例中定义了一个名为Person的类,并在Main方法中创建了一个新的Person对象。然后,创建一个BinaryFormatter实例,使用MemoryStream将Person对象序列化为字节数组,并将字节数组存储在buffer变量中。
在上面的代码示例中,我们采用了以下步骤来将C#类序列化为字节数组:
定义需要序列化为字节数组的C#类。
在需要序列化对象的程序中,使用MemoryStream 创建一个内存流对象。
创建BinaryFormatter实例以序列化对象。BinaryFormatter类是在C#中序列化/反序列化对象的内置类。
使用BinaryFormatter实例的Serialize方法将对象序列化为二进制流,并将其输出到内存流。
通过使用内存流的ToArray方法将字节数组赋值到变量中。
在本指南中,我们介绍了如何将C#类序列化为字节数组并提供了代码示例和解释。这是将C#对象传输或持久化的关键步骤之一,希望这个指南对您有所帮助。