Если вы использовали BitConverter
с целью вы можете использовать это (выведет на экран все 4 байта целое отдельно)
byte[] buffer = testData.SelectMany(arr => arr.SelectMany(x => BitConverter.GetBytes(x))).ToArray();
для полноты картины:
List<int> reversed = Enumerable.Range(0, buffer.Length/4)
.Select(x => BitConverter.ToInt32(buffer, x * 4))
.ToList();
Как и в ответ Якуб Массад в это будет в List<int>
вместо List<int[]>
, потому что сначала сглаживаем List<int[]>
, мы теряем информацию о длинах массивов.
Если вы хотите, чтобы бросить значения INT в байтах вы можете использовать этот
byte[] buffer = testData.SelectMany(arr => arr.Select(x => (byte)x)).ToArray();
Что ожидаемое поведение, если один из Интс находится вне диапазона байта? Например, 1,000,000. –
Получил пример, какими могут быть данные ввода/вывода? – Caramiriel
@MikeChristensen, пример, который дал OP, преобразует каждый 'int' в 4 байта. –