所以我正在序列化一些内容,我注意到在BinaryFormatter
文档中,它提到您可以通过将TypeFormat
属性设置为FormatterTypeStyle.TypesWhenNeeded
来提高性能并减小文件大小,或FormatterTypeStyle.XsdString
。
我已经尝试了两种 - 并且将它们组合在一起 - 但是我生成的文件的大小仍然固执地相同。偷看内容,我注意到了很多类型的字符串。 (在任何人询问之前,所有这些属性都设置为FormatterTypeStyle.TypesAlways
)
我正在使用有效支持.NET 3.5的Mono版本。这可能与此有关,但我想确认没有其他我错过的东西
提前感谢您提供任何帮助
答案 0 :(得分:0)
我做了类似的事情,比如将文本缓冲区发送到firebird blob到缓冲区序列化程序,这样:
protected Gtk.TextBuffer deserealizar (byte[] datos,TextBuffer txtBuffer)
{
Atom serialFormat = txtBuffer.RegisterDeserializeTagset(null);
ulong datostamano = (ulong) datos.LongLength;
TextIter start = txtBuffer.StartIter;
txtBuffer.Deserialize(txtBuffer, serialFormat, ref start, datos, datostamano);
return txtBuffer;
}
protected byte[] serializar(TextBuffer buffer)
{
TextIter inicio, final;
buffer.GetBounds(out inicio, out final);
Atom serialFormat = buffer.RegisterDeserializeTagset(null);
byte[] datos = buffer.Serialize(buffer, serialFormat, inicio, final);
return datos;
}
希望这有帮助。