我有一个
的字节数组byte[] d = new byte[64];
现在我想将它转换为像..的
这样的二维字节数组byte[,] data = new byte[8,8];
任何人都可以帮助我
答案 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]));