Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.05.2013
Сообщений: 98

Структура бинарного файла

13.02.2018, 13:18. Показов 1978. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте , необходимо сделать структурированный бинарный файл, т.е на определенных местах должны находится определенные байты ( первые 2 баита это сумма по модулю , следующие 2 баита отражают служебную информацию ). Правильно ли я понимаю что в любой бинарный фаил можно добавить структуру ? Пока не понял это ли вообшем от меня требуется. Спасибо за помощь .
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
13.02.2018, 13:18
Ответы с готовыми решениями:

Чтение бинарного файла по частям
Нужно разделить бинарный файл на куски и записать каждый в отдельный фаил: если размер файла 7 байт - то должно получится 4 фаила размером...

Двумерный массив из бинарного файла
Здравствуйте. С помощью BinaryWriter сохраняю имеющийся двумерный массив типа int в бинарный файл. Как теперь из этого бинарного файла...

Чтение значений из бинарного файла
Здравствуйте! И вот, опять, прошу помощи у сообщества :-Вот здесь). Не могли бы вы, пожалуйста, подсобить примером кода (я прошу...

7
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
13.02.2018, 14:04
Цитата Сообщение от PEndos Посмотреть сообщение
Правильно ли я понимаю что в любой бинарный фаил можно добавить структуру ?
Да. Это же твой формат файла и ты волен делать его так как тебе необходимо.
0
0 / 0 / 0
Регистрация: 11.05.2013
Сообщений: 98
13.02.2018, 15:23  [ТС]
Не догоняю тот момент , я загнал весь фаил в массив баит , и как теперь мне его пересобрать согласно моей структуре. Т.е допустим первое поле моей структуры занимает 2 байта(это поле должно отражать контрольную сумму).
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
13.02.2018, 15:28
PEndos, и как выглядит эта структура?
0
0 / 0 / 0
Регистрация: 11.05.2013
Сообщений: 98
13.02.2018, 15:34  [ТС]
Первые поле -2 байта контрольной суммы , второе поле ещё 2 байта (информация о количестве сегментов , 3 поле это сегменты по 64 баита , объеме фаила фиесированный . Если я правильно понял что вы спрашиваете.
0
 Аватар для rerf2010rerf
46 / 79 / 6
Регистрация: 10.08.2013
Сообщений: 237
13.02.2018, 15:49
Сформулируйте задачу внятно. Пока вообще не понятно, что вы собственно хотите спросить, о какой структуре говорите.
На вопрос в такой постановке можно ответить только - ну берите ваш массив байтов, да заполняйте согласно структуре. На первые два байта пишите контрольную сумму, дальше - информацию о количестве сегментов, ну и т.д.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
13.02.2018, 16:45
PEndos, именно про это и спрашивал. Запись подобной структуры несложно делается через BinaryWriter.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
using (var fstream = File.OpenWrite("data.dat"))
using (var writer = new BinaryWriter(fstream))
{
    short crc = 1;
    short segments = 2;
 
    writer.Write(crc);
    writer.Write(segments);
 
    byte[] segment = new byte[64];
    for (int i = 0; i < segments; i++)
    {
        writer.Write(segment);
    }
}
Чтение делается по аналологии через BinaryReader.
0
0 / 0 / 0
Регистрация: 11.05.2013
Сообщений: 98
14.02.2018, 13:11  [ТС]
Ввел в заблуждение. Имеется бинарный фаил , который нужно вписать(прочитать) в структуру и сохранить уже структурированный файл . Структура будет такой : 2 баита(ushort) - контрольной суммы , 2 байта - количество сегментов, исходный бф нужно разбить на сегменты по 64баита каждый содержит 32 переменных ushort. Максимальное количество сегментов 8000. (А как задать тогда структуру не записать же все 8к переменных ? )
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
14.02.2018, 13:11
Помогаю со студенческими работами здесь

Перезаписать определенные байты бинарного файла
При записи нового бинарного фаила использовал копирование со смешением в 10 баит. FileStream fs1 = new...

Ошибка при открытии бинарного файла
мне нужно открыть картинку как бинарный файл.. Делаю вот так: try { BinaryReader hdr = new...

Запись из файла в Базу данных (как организовать структура кода)
Из файла построчно считывается текст. Далее текст разбивается на отдельные значения и заносится в базу данных. Собственно саму проблему...

Считывание бинарного файла в ASP
Добрый день. Есть задача: считать бинарный файл и как есть запихать его браузеру (через response.binaryWrite). По MSDN...

Передача бинарного файла через форму
Привет. Кто может кинуть примерчик или ссылку на него? Мне необходимо передать картинку.


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru