如何在不使用二进制格式化程序的情况下将对象写入流

本文关键字:情况下 对象 程序 格式化 二进制 | 更新日期: 2023-09-27 17:55:41

我使用 BinaryWriter 将我的项目写入流。如何在没有二进制格式化程序的情况下将对象写入流并返回?

如何在不使用二进制格式化程序的情况下将对象写入流

简单地说,你需要(其中之一):

    编写代码
  • ,对每个成员使用(读取器/)编写器 API 依次(反)序列化每个字段/属性
  • 编写在编译时自动执行第一个选项的代码,生成 C#
  • 编写在运行时自动执行第一个选项的代码,生成 IL(或它编译的 C#)

考虑嵌套对象、null、引用跟踪、集合、列表、序列化回调、字符串值与引用相等、转换运算符、自定义迭代器、代理项、序列化上下文、IO 缓冲等。

或者,使用已存在的许多二进制序列化程序之一。作为作者,我有很大的偏见,但我会使用protobuf-net。

我有偏见的答案是 http://binaryserializer.codeplex.com。

它允许您定义绑定以控制数据的确切格式。

相关文章: