gpt4 book ai didi

c# - 面对序列化问题

转载 作者:行者123 更新时间:2023-11-30 18:09:34 25 4
gpt4 key购买 nike

你好这是我必须将对象序列化为文件的场景。

我正在使用 binaryformatter 将对象序列化为,

            IFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream1, object);

我正在写 GetObjectData() 如下,

            serinfo.AddValue("string1",objecta);
serinfo.AddValue("string2",objectb);
serinfo.AddValue("string3",objectc);

我在 objectb 中序列化 2 个列表 list1、list2。列表的大小不时变化。(每个列表也可能有 100000 个元素。意味着列表中的元素数量会影响流的大小)。所以,当我序列化对象时,我的流大小不应超过 10mb,如果它超过我应该写在另一个流中。简单地说,如果大小超过 10mb,我应该多一个流,每个流应该采用以下格式

stream1 --> objecta,(objectb)some n values in list,objectc
stream2 --> objecta,(objectb)values in list from n+1 to some m,objectc
..
streamn --> ........

每个流大小应限制在 10mb..

请给我一些线索来做到这一点..提前致谢..(首先感谢阅读这个大qn..:P)

最佳答案

我想我会将我的对象序列化到 MemoryStream 中,然后检查将其添加到当前文件流中是否会超过 10MB,如果超过 10MB,则在写入之前启动一个新流。

关于c# - 面对序列化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2379891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com