当我使用我的应用程序时,它在关闭时尝试序列化一个300 KB的字典。由于没有磁盘空间,它只能写入292 KB。有没有办法成功地反序列化其中的任何内容?
我使用了BinaryFormatter,如果我丢失了一些比丢失整个字典更好的元素。
当我反序列化时,我得到了这个例外:
e.Message "The input stream is not a valid binary format. The starting contents (in bytes) are: 20-01-20-20-20-FF-FF-FF-FF-01-20-20-20-20-20-20-20 ..."
答案 0 :(得分:2)
挑选二进制流确实需要很多关于实现的知识。 BinaryFormatter
是专有的,所以......除非这些数据真的很有价值,否则考虑它丢失可能会更便宜。你可以做很多苦苦挣扎,但这并不容易,开发时间并不便宜。
我不是说不能完成。 FWIW,我可以想办法为其他一些序列化器做这件事 - 只是BinaryFormatter
。