Как преобразовать объект в байтовый массив в C #

У меня есть коллекция объектов, которые мне нужно записать в двоичный файл.

Мне нужно, чтобы байты в файле были компактными, поэтому я не могу использоватьBinaryFormatter. BinaryFormatter добавляет всевозможную информацию для нужд десериализации.

Если я попробую

byte[] myBytes = (byte[]) myObject 

Я получаю исключение во время выполнения.

Мне нужно, чтобы это было быстро, поэтому я бы не стал копировать массивы байтов. Я просто хотел бы актерыbyte[] myBytes = (byte[]) myObject работать!

Хорошо, просто чтобы быть ясно, я не могу иметьЛюбые метаданные в выходном файле. Просто байты объекта. Упакованный объект-объект. Судя по полученным ответам, я буду писать на низком уровнеBuffer.BlockCopy код. Возможно использование небезопасного кода.

Ответы на вопрос(11)

Ваш ответ на вопрос