单字节数组到C#中的2d字节数组?

时间:2012-09-22 06:11:23

标签: c# arrays bytearray

我有一个

的字节数组
byte[] d = new byte[64];

现在我想将它转换为像..的

这样的二维字节数组
byte[,] data = new byte[8,8];

任何人都可以帮助我

3 个答案:

答案 0 :(得分:6)

这可能是方法之一。

byte[] d = new byte[64];
byte[,] data = new byte[8,8];

int row = 0;
int column = 0;

for(i=0; i < d.Length; i++)
{
   row = i%8;
   column = i/8;
   data [row, column] = d[i];    
}

答案 1 :(得分:4)

您可以使用Buffer.BlockCopy Method

byte[] d = new byte[64];
byte[,] data = new byte[8,8];

Buffer.BlockCopy(d, 0, data, 0, 64);

答案 2 :(得分:0)

这样的东西
byte[] d = new byte[64];

for (byte i = 0; i < d.Length; i++)
    d[i] = i;

byte[,] data = new byte[8, 8];

Enumerable.Range(0, 8).ToList().
    ForEach(i => Enumerable.Range(0, 8).ToList().
        ForEach(j => data[i, j] = d[i * 8 + j]));