【问题标题】:SALAR BOIS Serialization to diskSALAR BOIS 序列化到磁盘
【发布时间】:2016-01-03 14:01:31
【问题描述】:

谁能告诉我如何使用 Salar Bois 序列化到磁盘? 我想做正确的事,因为我正在按大小和时间进行优化。 具体来说,我必须序列化一个 List lp;

我在网站上找到的所有内容都是:

如何序列化一个对象:

var boisSerializer = new BoisSerializer();
using (var mem = new MemoryStream())
{
    boisSerializer.Serialize(this, mem);    
    return mem.ToArray();
}

如何反序列化一个对象:

var boisSerializer = new BoisSerializer();
return boisSerializer.Deserialize<SampleObject>(dataStream);

谢谢 帕特里克

【问题讨论】:

  • 问题是?对不起,我无法得到它...
  • 而这个序列化到内存,我如何序列化到磁盘呢?文件名没有重载
  • 使用 FileStream 代替 MemoryStream。

标签: c# serialization disk


【解决方案1】:

基本上,您想使用FileStream 而不是MemoryStream

此 MSDN 页面底部有一个示例:

https://msdn.microsoft.com/en-us/library/system.io.filestream(v=vs.110).aspx

但是要使用您的代码示例:

var boisSerializer = new BoisSerializer();
using (var fileStream = File.Create("c:\myfile.obj"))
{
    boisSerializer.Serialize(this, fileStream);
}

显然,您的返回对象会发生变化,因此您必须考虑如何使用此代码。

【讨论】:

  • 哇,工作奇迹!谢谢。将结果与 MS 二进制 1/5 乘以 1/2 大小进行比较!!!
猜你喜欢
  • 1970-01-01
  • 2014-01-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-14
  • 2022-01-10
  • 2015-11-21
相关资源
最近更新 更多