Я нахожу, что преобразовываю 1D байт и отдельные массивы в 2D, выполняя следующее. Я подозреваю, что это, вероятно, так же быстро, как и другие методы, но, возможно, есть более простая более простая парадигма? (Linq?)C# конвертировать 1D массив в 2D
private static byte[,] byte2D(byte[] input, int height, int width)
{
byte[,] output = new byte[height, width];
for (int i = 0; i < height; i++)
{
for (int j = 0; j < width; j++)
{
output[i, j] = input[i * width + j];
}
}
return output;
}
private static Single[,] single2D(byte[] input, int height, int width)
{
Single[,] output = new Single[height, width];
for (int i = 0; i < height; i++)
{
for (int j = 0; j < width; j++)
{
output[i, j] = (Single)input[i * width + j];
}
}
return output;
}
Вашего второго метода, является типом 'input' должен быть' байты [] ' ? – ryanyuyu
Можете ли вы предоставить пример ввода/вывода для одной из этих функций? –