|
Вопрос # 5 818/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Хочу спросить вот такой вопрос. У меня есть файл со своим расширением. Хочу создать такой же по структуре из Делфи.
Со структурой разобрался. Вот только все данные в этом файле как я понял в HEX-формате. На каком байте и что прописано понял, вот только не знаю как реализовать создание такого же файла?
Кто может чем помочь??? Хотя бы куда копать....
Как я понял... нужно создать HEX-файл, но почему там строковые данные сохранены текстом???? А циферные закодированы при просмотре блокнотом.. В общем, не пойму с чего начать.... Прошу помощи...
К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)
 |
Вопрос задал: RAW (статус: Посетитель)
Вопрос отправлен: 15 декабря 2011, 10:05
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: min@y™
Короче, вот тебе пилотный вариант.
Поиграйся, если чо не так - пиши. Будем думать.
А то мне на обед пора. К ответу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки ответа)
 |
Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 15 декабря 2011, 11:54
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 32; последнее сообщение — 15 декабря 2011, 16:15; участников в обсуждении: 2.
Страницы: [1] [2] [Следующая »]
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 10:18 [#1]:
Надо бы ещё несколько таких файлов, чтобы сделать выводы.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 10:19 [#2]:
да хоть сколько могу сделать... токо как их прикрепить???
|
|
RAW (статус: Посетитель), 15 декабря 2011, 10:27 [#3]:
Да хотя бы точь-в точь такой же файл создать???? Только из Делфи???? Дальше я уж додоумаю!!!!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 10:37 [#4]:
Вот пример 11 мая. Пример 2
64 00 00 00 01 00 00 00 00 00 00 00 0E 4D 79 20
50 72 69 6D 65 72 20 52 61 63 65 05 00 00 00 0F
00 00 00 05 00 00 00 00 00 00 00 0A 00 06 48 6F
72 73 65 31 06 48 6F 72 73 65 32 06 48 6F 72 73
65 33 06 48 6F 72 73 65 34 06 48 6F 72 73 65 35
00 00 00 00 00
64 - первая буква "d" она везде такая
след. код тоже везде одинаковый до OE - это название, оно меняется.
Сразу после него идет номер месяца "05" - май, потом все так же до - "0F" - это день.
Потом все везде одинаково до "06" - это кол-во букв в имени.
Все остальные имена дальше точно как и первое имя
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 10:41 [#5]:
Я тут поковырялся, вот что надумал:

Создать такой файл проще простого, например через TFileStream. Нужно только определиться с его структурой.
1) Что там за 12 байт заголовка (32-битные числа 100, 1, 0)?
2) Что за таинственные 6 байт по смещению 0x1E (00 00 00 00 0A 00)?
3) Что за 6 нулей в конце.
Как объяснишь - напишу код создания файла.
Цитата (RAW):
да хоть сколько могу сделать... токо как их прикрепить???
Сунь штук 5 в один архив и выложи на файлопомойку (например, http://slil.ru), а ссылку - сюда. Посмотрим.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 10:42 [#6]:
структура такая
64 00 00 00 01 00 00 00 00 00 00 00 "кол.букв в названии" "название" "номер месяца" 00 00 00 "день месяца" 00 00 00 "номер класса" 00 00 00 00 00 00 "кол имен" 00 00 00 "кол букв в имени1" "само имя" "кол букв в имени2" и т.д. просто добавляются имена по кол-ву имен
в конце всего 00 00 00
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 10:53 [#7]:
Цитата (RAW):
"день месяца" 00 00 00 "номер класса"
Какой номер класса? После дня месяца идёт кол-во имён (04)!
И ещё вот на это ответь:
Цитата (min@y™):
2) Что за таинственные 6 байт по смещению 0x1E (00 00 00 00 0A 00)?
3) Что за 6 нулей в конце.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 11:00 [#9]:
После кол-ва имен идет номер класса, просто он может быть нудевым, а можно и задать от 0 до 4 в программе...
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 11:09 [#10]:
Цитата (RAW):
После кол-ва имен идет номер класса, просто он может быть нудевым, а можно и задать от 0 до 4 в программе...
Если номер класса = 4, то где же кол-во имён?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 11:11 [#11]:
Цитата (RAW):
Честно не очень понял эти последние байты и в середине...
Надо понять!
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 11:25 [#12]:
кол-во идет перед номером класса
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 11:29 [#13]:
Цитата (RAW):
кол-во идет перед номером класса
В твоём первом примере (который я отсканировал) по какому смещению идёт кол-во имён и по какому - номер класса? Мне надо понять, где они располагаются и сколько байт занимают.
А так функция сохранения почти готова. Пока создаёт файл вплоть до даты.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 11:43 [#14]:
в моем примере класс 0, начинается сразу же после
04 00 00 00
класс будет
00 00 00 00
0A 00 - это фиг знает что такое.... разделитель может...
по концовке ощущение такое, что добивание происходит до чего-то в случае если мало имен... не могу врубиться
вот пример еще два файла
на 2 человека (12 декабря, 2 класс, Klassica)
http://i053.radikal.ru/1112/c5/b24ff41bec2d.jpg
на 37 человек (1 октября, 3 класс, New Klass)
http://s010.radikal.ru/i311/1112/50/bdf75aacf4fa.jpg
посмотри, быть может ты поймешь...
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 11:46 [#15]:
Ладно, понял, сделаю щас.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
15 декабря 2011, 12:14: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Работа с файловой системой модератором Ерёмин А.А.
|
RAW (статус: Посетитель), 15 декабря 2011, 12:55 [#16]:
Файл 1.mrn создан из программы?
Он не открывается прогой... Ошибка структуры....
Файл 5818_primer.mrn
открывается норм...
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 13:01 [#17]:
Цитата (RAW):
Файл 1.mrn создан из программы? Он не открывается прогой... Ошибка структуры.... Файл 5818_primer.mrn открывается норм...
А ты сравни эти 2 файла, найди отличия. И скажи мне.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 13:07 [#18]:
у работающего в конце 00 00 00 00 00 00
есть.... а у "1.mrn" нету....
|
|
min@y™ (статус: Доктор наук), 15 декабря 2011, 13:11 [#19]:
Цитата (RAW):
у работающего в конце 00 00 00 00 00 00 есть.... а у "1.mrn" нету....
Ну так допиши туда эти 6 байт и попробуй открыть. И подумай, что означают эти нули.
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
|
RAW (статус: Посетитель), 15 декабря 2011, 13:22 [#20]:
с нулями все нормально... только вот эти нули что то да значат... потому что их где-то ваще нет, если много имен, где-то их 6 гдето их 7....
причем больше в программе ничего не вводится, на чтобы можно было бы влиять
|
Страницы: [1] [2] [Следующая »]
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|