Top.Mail.Ru
Уведомления
Очистить все

C#: как "взять" часть от массива?

(@dandythecroc)
Level 1

Привет всем, хочу взять часть от большого массива для дальнейшей обработки, делаю так. Базовый массив:

var length = stream.Read(data);

Здесь data - это изначальный массив, из которого мне требуются 5 первых байт:

byte[] extractedData = data.Take(5);

При сборке на этой строке почему-то возникает ошибка, подскажите что тут не так?

 

Цитата
Создатель темы Размещено : 17.07.2025 18:56
(@dandythecroc)
Level 1

Забыл указать текст ошибки:

Ошибка CS0266 Не удается неявно преобразовать тип "System.Collections.Generic.IEnumerable<byte>" в "byte[]". Существует явное преобразование (возможно, пропущено приведение типов).

ОтветитьЦитата
Создатель темы Размещено : 17.07.2025 18:58
Aveal
(@aveal)
Top level Admin

Запись от: @dandythecroc

Забыл указать текст ошибки:

Ошибка CS0266 Не удается неявно преобразовать тип "System.Collections.Generic.IEnumerable<byte>" в "byte[]". Существует явное преобразование (возможно, пропущено приведение типов).

Take() возвращает IEnumerable<byte>, нужно его преобразовать в byte[]:

byte[] extractedData = data.Take(5).ToArray();

 

ОтветитьЦитата
Размещено : 18.07.2025 11:21
(@dandythecroc)
Level 1

@aveal Благодарю) Понял и исправил, теперь все собирается без ошибок.

ОтветитьЦитата
Создатель темы Размещено : 18.07.2025 20:09
Поделиться: