Разделить файл на блоки по 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];