将 StreamWriter 与 BinaryFormatter一起使用

本文关键字:一起 BinaryFormatter StreamWriter | 更新日期: 2023-09-27 17:56:30

我正在开发一个服务器客户端应用程序,我想在服务器端序列化字符串列表并将其发送到客户端。我想使用 BinaryFormatter 类进行序列化,如下所示:

List<String> myList = new List<String>();
ceva.Add("A");
ceva.Add("B");
ceva.Add("C!");
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(writer, myList);

我的问题是writer流的类型是 StreamWriter 型的,Serialize 方法期望将 Stream 类型的对象作为第一个参数。

有什么方法可以像我在这里尝试的那样使用StreamWriter类型的作家吗?

将 StreamWriter 与 BinaryFormatter一起使用

您可以使用 StreamWriter.BaseStream 属性作为 Serialize 方法的第一个参数:

binaryFormatter.Serialize(writer.BaseStream, myList);
你可以

这样使用。

List<String> myList = new List<String>();
ceva.Add("A");
ceva.Add("B");
ceva.Add("C!");
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(writer.BaseStream, myList);