I m 编写双元数据格式,以存档,其中载有序列物体图表。 为了更能抵御错误(并能够解答问题),我正在考虑在上游确定每个目标。 目前使用C#和BaryWriter的Im,但这是一个普遍的问题。
The size of each object isn t known until it has been completely serialized, so to be able to write the length prefixes there are a number of strategies:
在标的编号之后,使用具有足够空间的书写缓冲器,随机进入,并在正确位置上加长。
每一物体都写给自己的记忆,然后将缓冲和缓冲内容的长度写到主流。
第1份通行证中的所有物体的注销时间为零,记住所有物体尺寸的档案中的位置(物体大小表),并作第二次填满所有尺寸的通行证。
?
总面积(因而是第一/最主要物体的大小)通常在1mb左右,但可高达50-100mb。 我关切的是这一进程的表现和记忆使用。
哪些战略最有效率?