Разделить файл на блоки по 16 байт - C#

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! есть проблема с разделением файла на блоки 128 бит... Первый байт inputblok[] почему-то ровняется со вторым байтом массива input[] а должен с первым... то есть если массив input[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20....} то массив inputblok[]={2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17} а должен быть с 1 по 16
byte[] outstream;
            int blokcount = input.Length / 16;
            double lastblock = input.LongLength % 16;
if (lastblock == 0)
            {
                outstream = new byte[input.Length];
            }
            else
            {
                double count = 16 - lastblock;
                outstream = new byte[input.Length + Convert.ToInt32(count)];
            }
byte[] inputblok = new byte[16];
            output = new byte[16];
            for (int i = 0; i < blokcount; i++)
            {
                for (int j = 0; j < 16; j++)
                {
                    inputblok[j] = input[i + j];
                    
                }
                File.WriteAllBytes(@"C:\Users\rijndael\Desktop\16.txt", inputblok);
            }

Решение задачи: «Разделить файл на блоки по 16 байт»

textual
Листинг программы
inputblok[j] = input[i*16 + j];

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5