Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/185: Рейтинг темы: голосов - 185, средняя оценка - 4.75
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782

Как открыть бинарный файл, не зная его структуру?

22.01.2009, 01:41. Показов 37370. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли как-нибудь открыть бинарный файл, не зная его структуру?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.01.2009, 01:41
Ответы с готовыми решениями:

Запись в .dbc файл, зная его структуру
Есть 1 dbc файл, его структура такая: public long a; public long b; public bool op; public bool cl; ...

Считать побайтно файл неизвестного формата зная его структуру
Столкнулся с проблемой, нужно считать файл, у файла не прописано расширение, известна байтовая структура: заголовок файла: 1 байт:...

Как правильно сохранить и потом считать структуру в бинарный файл
Есть структура struct card { int size; char *lear; int *name; }; Эта структура это карты игрока. Заполняем ее данными, у...

12
0 / 0 / 0
Регистрация: 15.09.2008
Сообщений: 26
22.01.2009, 02:14
Открыть то можно, но тогда зачем если ты всеравно ничего не поймеш.
А для понимания надо знать структуру.
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
22.01.2009, 02:14
fopen(. . . ,"rb");
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
23.01.2009, 03:03  [ТС]
Не правильно сформулировал вопрос, открыть-то, понятно-можно, а прочитать как-нибудь, не зная его структуру?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
23.01.2009, 07:59
qwert, да читать вы его можете точно также каки файл, структуру которого вы знаете, но вот какой смысл в этом, объясните? функциям абсолютно все равно, знаете вы структуру или нет...
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
24.01.2009, 02:39  [ТС]
Цитата Сообщение от WooDooMan Посмотреть сообщение
qwert, да читать вы его можете точно также каки файл, структуру которого вы знаете, но вот какой смысл в этом, объясните? функциям абсолютно все равно, знаете вы структуру или нет...
В чём смысл? Например, дали бинарный файл, и неправильно сказали его структуру, или вообще не сказали, а открыть надо.
Немного не понял про то, что читать как обычный файл. Например, для функции fread нужно знать структуру, а функция fscanf не подойдёт для работы с бинарным файлом. А есть ещё какие-нибудь другие функции для работы с бинарным файлом, которым не нужно указывать структуру?
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
24.01.2009, 03:23
fstream, iostream посмотри... а как их юзать - на форуме есть тема с чтением внутренностей ярлыков, как раз тебе живой пример
0
0 / 0 / 0
Регистрация: 15.09.2008
Сообщений: 26
24.01.2009, 05:10
для функции fread не нужно знать структуру чтобы открыть и прочитать.
Надо знать чтобы понять, то что ты там увидиш.
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
26.01.2009, 01:58  [ТС]
Цитата Сообщение от WooDooMan Посмотреть сообщение
fstream, iostream посмотри... а как их юзать - на форуме есть тема с чтением внутренностей ярлыков, как раз тебе живой пример
Спасибо. Я пока не пользовался потоками fstream. Попробую разоьраться.

Цитата Сообщение от vander Посмотреть сообщение
для функции fread не нужно знать структуру чтобы открыть и прочитать.
Надо знать чтобы понять, то что ты там увидиш.
Этой функции нужно знать размер структуры. Там 4 параметра, второй из которых размер структуры.
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
26.01.2009, 10:50
Цитата Сообщение от qwert Посмотреть сообщение
Этой функции нужно знать размер структуры. Там 4 параметра, второй из которых размер структуры.
Нет, не нужно. Читай внимательней. Тебе достаточно указать нужный тебе размер буфера в памяти, а не какой-то структуры. Не говорю, что с помощью ftell вообще можно весь бинарный файл залить в оп в буфер по указателю. Так что, fread пофигу структура у тебя там, или обычный указатель на буфер.
0
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
26.01.2009, 11:07
можно читать по одному символу fgetc(fp);
если есть макрос getc(fp) тоже можно читать, но возможны побочные эффекты при getc(fp++)
0
146 / 146 / 32
Регистрация: 26.10.2008
Сообщений: 782
27.01.2009, 01:00  [ТС]
Цитата Сообщение от Vourhey Посмотреть сообщение
Нет, не нужно. Читай внимательней. Тебе достаточно указать нужный тебе размер буфера в памяти, а не какой-то структуры. Не говорю, что с помощью ftell вообще можно весь бинарный файл залить в оп в буфер по указателю. Так что, fread пофигу структура у тебя там, или обычный указатель на буфер.
Например, укажу я наугад в fread 300 байт, и как прочитать информацию?
А можно поподробнее про ftell, раньше я с ней не сталкивался?
0
Почетный модератор
7393 / 2639 / 281
Регистрация: 29.07.2006
Сообщений: 13,696
27.01.2009, 01:44
Ты такие вопросы задаешь смешные аж жуть. Вот указал ты 300 байт, вот ты 300 байт информации и прочитаешь (если их хватит в файле).
Про ftell в инете можешь найти. Или в книжке любой.

P. S. в противном случае твой вопрос сводится не к тому, как отрыть бинарь, а к следующему: "я такой-сякой нифига не знаю в каком формате хранятся данные в бинаре. че мне терь делать?". По-моему, ты сам еще не понял, что тебе нужно, короче. Как открыть бинарь тебе показали. А формат данных в нем известен только разве великому Ктулху.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.01.2009, 01:44
Помогаю со студенческими работами здесь

Как правильно записать в бинарный файл структуру, в которой есть string?
Предположим есть вот такая структура struct MyStruct { int number; string str; }; Её надо записать в бинарный файл, с...

Как открыть в потоке бинарный файл, добавленный в проект?
Допустим, в проекте есть папка Source, а в ней бинарный файл Temp.hz. При таком коде: Assembly assembly =...

Как получить файл не зная его имени
На сервер отправляется файл, имени которого я не знаю. Вопрос - каким образом выполнить его перенос в постоянную папку при этом условии....

Не получается прочесть правильно текстовый файл в структуру а затем в бинарный файл
Нужно просто прочесть файл в структуру данных а потом оттуда записать в бинарный файл Вот как выглядит текстовый файл: 11122 Mary...

Как удалить определённый EXE-файл, не зная его имени?
Как удалить определенный exe файл не зная имени файла. Пример, есть файл батник (test.bat) и test.exe (программа), и мне нужно удалить эту...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru