C# 合并二进制数据

C# 合并二进制数据,c#,serialization,binaryformatter,C#,Serialization,Binaryformatter,我正在重新编排这个问题,使之简短扼要。如果我通过BinaryFormatter的Serialize方法运行一组不同的自定义对象,我将得到一组序列化的二进制文件。使用我的应用程序中的保存/加载功能合并/检索这些二进制文件的最佳方法是什么?一种方法是使所有这些自定义对象从您选择的单个接口继承。 然后创建一个类,该类将保存该接口的对象列表。 然后,序列化该容器类。 这相当于您所要求的,即将二进制文件合并在一起。 与其尝试这样做,不如创建一个类,创建已经在一起的二进制文件,而不必在以后合并它们 这就是你

我正在重新编排这个问题,使之简短扼要。如果我通过BinaryFormatter的Serialize方法运行一组不同的自定义对象,我将得到一组序列化的二进制文件。使用我的应用程序中的保存/加载功能合并/检索这些二进制文件的最佳方法是什么?

一种方法是使所有这些自定义对象从您选择的单个接口继承。
然后创建一个类,该类将保存该接口的对象列表。
然后,序列化该容器类。
这相当于您所要求的,即将二进制文件合并在一起。
与其尝试这样做,不如创建一个类,创建已经在一起的二进制文件,而不必在以后合并它们


这就是你要问的吗

既然二进制序列化速度如此之快,为什么不加载它,更改所需内容,然后再次保存它呢?反序列化回对象是没有意义的。我所要做的就是将这些文件合并成一个文件,然后再将它们拆分。根据您的要求,我在要保存的1个新文件中,将包含一系列字符,指示最初合并的文件数。因此,稍后我可以使用某种方法将1个大文件拆分为单独的部分。还有一件事,我关心的主要问题不一定是合并过程,而只是确保合并的方式不会扰乱数据的表示方式。此外,在分割该大文件后,我的所有文件所包含的内容都与合并前相同。