Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 22.12.2015
Сообщений: 1

Поблочно записать массив байтов в файл

22.12.2015, 23:28. Показов 1280. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть массив байтов размером 256 КБ. Нужно записать его поблочно в файл(повторить 10 раз, размер блока изменять в диапазоне 512-1024 байта). Проблема в том, что я не совсем понимаю как избежать выход за границу массива. В конце цикла for у меня значение счетчика превышает размер массива и я получаю исключение.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
static void Main()
        {
            var sourceArray = new byte[256 * 1024];
            new Random().NextBytes(sourceArray);
            var blockSizes =new[]
            {
                512,
                512 + 512/10,
                512 + (512/10)*2,
                512 + (512/10)*3,
                512 + (512/10)*4,
                512 + (512/10)*5,
                512 + (512/10)*6,
                512 + (512/10)*7,
                512 + (512/10)*8,
                1024
            };
            foreach (var bs in blockSizes)
                using (var fs = new FileStream(bs.ToString(), FileMode.Create))
                    for (var i = 0; i < sourceArray.Length; i += bs)
                        fs.Write(sourceArray, i, bs);
        }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.12.2015, 23:28
Ответы с готовыми решениями:

Массив байтов записать в файл
Вообщем экспериментирую с шифрованием. Беру к примеру файл размером 33*663 байт. Этот файл преобразую в массив байтов (33*663 байт). Этот...

Считать файл и записать данные в массив байтов
Хочу создать класс который считывает файл и записывает данные в массив байтов. Есть следующий код. Требуются поправки. using System; ...

Как можно записать файл больше 8ГБ в массив байтов?
Здравствуйте,подскажите, пожалуйста, как можно записать файл больше 8ГБ в массив байтов?

1
979 / 874 / 350
Регистрация: 26.04.2012
Сообщений: 2,647
22.12.2015, 23:59
Что-то какую-то абсолютнейшую бессмыслицу вы делаете... Эксепшен потому, что количество элементов в массиве не всегда делится на размер блока, надо проверять, а не заканчивается ли массив:
C#
1
fs.Write(sourceArray, i, bs+i>sourceArray.Length?sourceArray.Length-i:bs);
Но зачем все это если не секрет?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.12.2015, 23:59
Помогаю со студенческими работами здесь

Массив байтов записать в нетипизированый бинарный файл
Скажите как работать с бинарными файлами в си, а именно есть массив байтов: char; //в нем записаны числа от 0 - 255 не больше ...

Необходимо файл (любого расширения) записать в базу данных как массив байтов
Необходимо файл (любого расширения) записать в базу данных в byte форме. И затем взять его (выбрав необходимый из DGV), кликнуть и он...

Записать звука в файл из потока байтов
допустим ко мне на сервер TCP пришел массив байт звука и я хочу этот поток байтов записать в звуковой файл. Как я могу это сделать на Qt...

Записать массив байтов с микрофона
Всем привет! Возникла проблема, никак не могу придумать такую штуку, допустим, имеется небольшое приложение, две кнопки: ...

Считать по 4 байта и записать в массив байтов
есть какой то TcpClient который отправляет данные на сервак мне нужно эти данные на сервере считать по 4 байта в один большой массив...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru