有没有更好的方法将二维数组写入二进制文件?

时间:2014-08-13 05:03:12

标签: c# arrays binary

我有一个2D数组,想存储在二进制文件中。据我所知,我编写了以下代码将数据传输到二进制文件中。

double[,] A = new double[nx,ny];
// put some data in the array
for (i = 0; i < nx ; i++)
{
    for (j = 0; j < ny ; j++)
    {
        A[i,j] = ...;
    }
}
string path = "address";
FileStream fs = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter bw = new BinaryWriter(fs);
for (i = 0; i < nx ; i++)
{
    for (j = 0; j < ny ; j++)
    {
        bw.Write(A[i,j]);
    }
}
bw.Close();
fs.Close();

此代码有效,但我需要更好的方法和更快的方法。 有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您可以对BinaryFormatter类使用二进制序列化。

你会在网上找到很多信息。 一个例子是: http://www.centerspace.net/examples/nmath/csharp/core/binary-serialization-example.php