C# 将锯齿状数组保存到驱动器
C# Save Jagged Arrays to Drive
我正在寻找一种简单的方法来将锯齿状数组存储到硬盘以便稍后加载它。
我找到这个 post 来解决问题...
Save and load a jagged array
...但我很难理解它,我认为一定有更简单的方法来做到这一点。
我要保存的数组大小为 ~8kb
有什么不同的解决方案吗?
使用内存流:
double[][,] myJaggedArr = ...
var data = SerializeToStream(myJaggedArr);
var data2 = DeserializeFromStream(data) as double[][,];
public static MemoryStream SerializeToStream(object o)
{
MemoryStream stream = new MemoryStream();
IFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, o);
return stream;
}
public static object DeserializeFromStream(MemoryStream stream)
{
IFormatter formatter = new BinaryFormatter();
stream.Seek(0, SeekOrigin.Begin);
object o = formatter.Deserialize(stream);
return o;
}
我正在寻找一种简单的方法来将锯齿状数组存储到硬盘以便稍后加载它。
我找到这个 post 来解决问题... Save and load a jagged array
...但我很难理解它,我认为一定有更简单的方法来做到这一点。
我要保存的数组大小为 ~8kb
有什么不同的解决方案吗?
使用内存流:
double[][,] myJaggedArr = ...
var data = SerializeToStream(myJaggedArr);
var data2 = DeserializeFromStream(data) as double[][,];
public static MemoryStream SerializeToStream(object o)
{
MemoryStream stream = new MemoryStream();
IFormatter formatter = new BinaryFormatter();
formatter.Serialize(stream, o);
return stream;
}
public static object DeserializeFromStream(MemoryStream stream)
{
IFormatter formatter = new BinaryFormatter();
stream.Seek(0, SeekOrigin.Begin);
object o = formatter.Deserialize(stream);
return o;
}