|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|||||||||||
Как вычитывать переменные с бинарного файла по-отдельности, не объявляя структур, а имея данные об их составе?08.10.2014, 21:42. Показов 2649. Ответов 32
Метки нет (Все метки)
Нужно сделать так, что бы программа могла брать из некого файла (*.cfg) структуру и обрабатывать её. Т.е. в самой программе не прописано:
0
|
|||||||||||
| 08.10.2014, 21:42 | |
|
Ответы с готовыми решениями:
32
Чтение нескольких структур и одной переменной из бинарного файла. Формат файла имеется Как считать данные из бинарного файла в массив ArrayList
|
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|||
| 09.10.2014, 00:44 [ТС] | |||
|
Добавлено через 2 минуты
0
|
|||
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||
| 09.10.2014, 06:13 | ||
|
semihal, в языке C++ описание всех типов данных, с которыми работает программа, должно быть известно в момент компиляции. Если я правильно понял то, чего вы хотите добиться, то это не выполнимо на языке C++. То есть, вы заблждаетесь, когда говорите:
0
|
||
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|
| 09.10.2014, 08:47 [ТС] | |
|
kodv, как пример - sELedit, поэтому и говорю
Там структура сама находится в _configs/........cfg
0
|
|
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||||||
| 09.10.2014, 09:07 | ||||||
|
semihal, Вы уверены, что там используются структуры, которые динамически определяются в языке C++, который является языком со статической типизацией?
Никто же не мешает сделать примерно так:
Добавлено через 1 минуту Но вы то хотите именно определять динамически структуры, описание которых вы хотите читать из подпихиваемого программе файла ... Так? Или я вас неправильно понял?
0
|
||||||
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|
| 09.10.2014, 10:42 [ТС] | |
|
kodv, ну раз динамически никак, тогда хотя бы какой-нибудь способ "универсальный" что ли. Просто как раз такт в sELedit там саиа структура файла опичанна в cfg, в зависимости от того, какие переменные туда засунуть , так и читать будет
Добавлено через 1 минуту Сейчас даже исходники поищу от него. Видел их, но разобраться не смог
0
|
|
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||
| 09.10.2014, 10:50 | ||
|
Считываете данные из файла cfg в какой-нибудь TStringList (мы же в разделе C++ Builder). Создаем массив Variant'ов, количество элементов в котором равно количеству строк в TStringList. После этого циклом пробегаем по TStringList. На каждой итерации читаем двоичные данные из списка в формате, который берем из текущего элемента TStringList. В итоге получаем массив, размер которого равен количетсву полей в файле, а в каждом элементе массива лежит значения поля в нужном формате. Пример кода надо, или алгоритма достаточно будет?
0
|
||
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|
| 09.10.2014, 10:55 [ТС] | |
|
kodv, вот исходники селедита. Но они на шарпе вроде как
0
|
|
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
||
| 09.10.2014, 10:57 [ТС] | ||
|
P.S. данные как раз таки во время работы программы храняться в массиве структуры.
0
|
||
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||||||
| 09.10.2014, 11:45 | ||||||
Сообщение было отмечено semihal как решение
Решение
Как то так:
0
|
||||||
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
|
| 09.10.2014, 12:08 [ТС] | |
|
kodv, то есть он и используется в seledite?? О_о спасибо, Друже !!
Добавлено через 8 минут Постараюсь разобраться в алгоритме, пока,вроде бы всё понятно)) Осталось разобраться как сделать это для такого большого количества "структур".
0
|
|
|
1449 / 1121 / 347
Регистрация: 11.04.2011
Сообщений: 2,621
|
||
| 09.10.2014, 12:15 | ||
|
0
|
||
|
6 / 6 / 3
Регистрация: 04.10.2014
Сообщений: 138
|
||
| 09.10.2014, 12:19 [ТС] | ||
|
0
|
||
| 09.10.2014, 12:19 | |
|
Запись из бинарного файла, в массив структур Чтение вектора структур из бинарного файла Чтение массива структур из бинарного файла Как записать данные из файла в массив структур? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|