:: Visual Foxpro, Foxpro for DOS
определение формата файла данных
Анонимный пользователь
Автор
Задача широкого профиля - имеется некий файл(ы) данных от некоего приложения. Ну скажем, один *.DB и еще несколько - *.dat.
Есть большое предположение, что сии файлы могут иметь формат некой условной БД - Paradox, dBase, прочее.
Есть ли какие-то методики определения классовой принадлежности данных файлов, кроме перебора возможных провайдеров данных и попыток соединения? (ну скажем, по нескольким первым байтам... или еще как...)
Кто-нибудь имеет опыт таких экспериментов?
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Sewer
Задача широкого профиля - имеется некий файл(ы) данных от некоего приложения. Ну скажем, один *.DB и еще несколько - *.dat.
Есть большое предположение, что сии файлы могут иметь формат некой условной БД - Paradox, dBase, прочее.
Есть ли какие-то методики определения классовой принадлежности данных файлов, кроме перебора возможных провайдеров данных и попыток соединения? (ну скажем, по нескольким первым байтам... или еще как...)
Кто-нибудь имеет опыт таких экспериментов?

Если не хочется перебирать ВСЕХ провайдеров, то разумнее глянуть в и-нете список расширений файлов БД, с целью ограничения круга исследований. ;) Ну, а потом ручками, если готового приложения для доступа к файлу не найдется. Не знаю, конечно, что у вас за dat/db, но как правило лежащие в них данные достаточно легко видятся глазом (если не закодированы) и структура файла помаленьку вырисовывается. Далее, методом проб и ошибок, любыми низкоуровневыми функциями можно эти данные извлечь в другой удобный формат (txt, dbf, djvu) ;).
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Анонимный пользователь
Автор
и что вам дадут расширения файлов?
я могу и dbf в db переименовать - что же, открывать как парадокс?
а вы глазом типы файлов по содержимому заголовка отличаете? можете dbf dBase отличить от dbf VFox 7?
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Sewer
и что вам дадут расширения файлов?
Так начинать с чего-то надо.
Sewer
я могу и dbf в db переименовать - что же, открывать как парадокс?
а вы глазом типы файлов по содержимому заголовка отличаете? можете dbf dBase отличить от dbf VFox 7?
Это тема скорее для хакерского форума. Фокс тут как-бы косвенно замешан. Тут случаев может быть миллион, начиная от простого переименования расширения и кончая самодельным форматом файла с гордой фамилией dat.
Вы для начала попробуйте открывать свои файлы какими-нибудь приложениями. Или ищите человека с набитым глазом, раз никаких "вторичных" признаков файла вам давать не хочется. Нужно знать хоть заголовок файла (байт 100-500), чтобы советовать.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Анонимный пользователь
Автор
дык я о чем и говорю - может кто-то уже "знает что-то, чего не знаю я"? (с) ;)
или хотя бы знает, где можно подсмотреть? ;)
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Sewer
дык я о чем и говорю - может кто-то уже "знает что-то, чего не знаю я"? (с) ;)
или хотя бы знает, где можно подсмотреть? ;)

Так ясно, где посмотреть. В и-нете. Набираешь в поисковике "расширение dat" и вся спина в мыле. Ради интереса вчера пробовал. На одну человеческую жизнь этого трепа слишком много.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Анонимный пользователь
Автор
reware
Sewer
дык я о чем и говорю - может кто-то уже "знает что-то, чего не знаю я"? (с) ;)
или хотя бы знает, где можно подсмотреть? ;)

Так ясно, где посмотреть. В и-нете. Набираешь в поисковике "расширение dat" и вся спина в мыле. Ради интереса вчера пробовал. На одну человеческую жизнь этого трепа слишком много.

угу, вот именно - "посмотреть в инете"
Набираешь в поисковике "расширение dat" - и утопаешь в горе мусора, 95% которой - о поиске видеокодеков и проблемах с кодированием/декодированием видео, и еще 5% - про то, что делают школьницы и прочее...

Вобщем, давайте по существу.
Если вам есть что предметного сказать/посоветовать - то давайте, а если оного нет - то не-давайте.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Sewer
угу, вот именно - "посмотреть в инете"
Набираешь в поисковике "расширение dat" - и утопаешь в горе мусора, 95% которой - о поиске видеокодеков и проблемах с кодированием/декодированием видео, и еще 5% - про то, что делают школьницы и прочее...
Вобщем, давайте по существу.
Если вам есть что предметного сказать/посоветовать - то давайте, а если оного нет - то не-давайте.

Разрешите выполнять бегом, господин полковник ?
Так трудно ? Не надо отвлекаться на разговоры школьниц. Посмотрите сайт filext.com во вложении.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Asws

Сообщений: 325
Откуда: Балаково
Дата регистрации: 20.01.2008
Надо искать описания структуры файлов (заголовков)
Для примера - есть хорошая книга Clipper Programming Guide 1992 года (русское издание 1994 г.) Автор - Rick Spence
В ней есть глава с описанием структуры файлов DBF, DBT, FRM, LBL, MEM, NTX, NDX
Описание дано на языке C.
Наверное есть и более современные руководства, надо поискать.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Asws

Сообщений: 325
Откуда: Балаково
Дата регистрации: 20.01.2008
Попробуйте поискать по ключевым словам Dump [of dbf|dbt|dbc|...] и прочие варианты.
И искать на разных поисковиках (mail, yandex, gogo, и прочие), результаты поиска у них очень различаются.



Исправлено 1 раз(а). Последнее : Asws, 04.10.08 10:17
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Анонимный пользователь
Автор
да это что-то действительно старовато... есть вообще подозрение, что это подизвращенные файлы от Paradox... но за совет большое спасибо!
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Для некоторых стандартов байт 00=
FoxBASE+/dBASE III +, без memo - 0х03
FoxBASE+/dBASE III +, с memo - 0х83
FoxBASE+/dBASE III +, с memo - 0х83
FoxPro/dBASE IV, без memo - 0х03
FoxPro с memo - 0хF5
dBASE IV с memo - 0x8B
для VFP - 0x30


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Crispy
Для некоторых стандартов байт 00=
FoxBASE+/dBASE III +, без memo - 0х03

А откуда известно, что сей файл относится именно к xBase ? Может, это вообще .doc с переименованным расширением.
Ratings: 0 negative/0 positive
Re: определение формата файла данных
ry

Сообщений: 2115
Дата регистрации: 24.09.2007
Многие типы файлов можно идентифицировать по первым байтам. Это справедливо для формата dbf (см. выше) и для многих других. Те же документы Word и Excel имеют первые байты D0 CF (кроме версии 2007, у них ZIP-формат), zip - 50 4B (символы PK), exe - 4D 5A (символы MZ), pdf - 25 50 44 46 (строка %PDF), rar - 52 61 72 21 (строка RAR!), cds - 96 19 E0 BD и т.д. Но DB таким образом не определишь. Да и чато бывает, что разработчик "нового" формата просто дописывает в начало файла какую-нибудь свою информацию. Получается, скажем, обычный dbf, но по первым байтам его уже не определить. Поэтому я согласен с reware, что надо сначала изучить соедржимое файлов в шестнадцатеричном (или даже в текстовом) редакторе.



Исправлено 1 раз(а). Последнее : ry, 06.10.08 11:04
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
reware
Crispy
Для некоторых стандартов байт 00=
FoxBASE+/dBASE III +, без memo - 0х03

А откуда известно, что сей файл относится именно к xBase ? Может, это вообще .doc с переименованным расширением.
Ну вообще-то у .doc нулевой байт вроде как D0.
А в принципе, если так рассуждать - чисто теоретически можно допустим и бинарный файл иметь и биться над ним без толку - а это может оказаться просто напросто какой-нибудь дамп памяти к примеру, от балды переименованный в .dbf.
Но вроде в данном случае шла речь именно о таблицах данных - что похоже достаточно достоверно известно.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Crispy
Ну вообще-то у .doc нулевой байт вроде как D0.
А в принципе, если так рассуждать - чисто теоретически можно допустим и бинарный файл иметь и биться над ним без толку - а это может оказаться просто напросто какой-нибудь дамп памяти к примеру, от балды переименованный в .dbf.
Но вроде в данном случае шла речь именно о таблицах данных - что похоже достаточно достоверно известно.

Да что вы к dbf привязались ? Речь не шла "о таблице данных". Было весьма туманно сказано "имеется _некий_ файл(ы) данных от _некоего_ приложения". Может и бинарный, текстовый, может дамп памяти, может...может...
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
В общем случае само собой может быть что угодно.
А если и в самом деле:
Sewer
да это что-то действительно старовато...
может оказаться чем-то и вообще самопальным из старых времен - когда, как читал где-то - только ленивый не создавал свой собственный стандарт баз данных на си, паскале, на бейсике, да на чем угодно. Тогда конечно это может оказаться труба.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: определение формата файла данных
reware

Сообщений: 4116
Откуда: Хабаровск
Дата регистрации: 21.07.2008
Не к ночи будет сказано (пока модератор не дал больно) - может кто видел в и-нете утилитку, которую можно натравить на неизвестный файл, а она в ответ выдаст его предполагаемое происхождение/формат и рекомендации по выбору нужных просмотрщиков ? А то ручками/глазками лопатить бинарные дампы...
Такая штука весьма была бы полезна программеру (в том числе и лисоводу).
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Crispy

Сообщений: 18571
Дата регистрации: 16.05.2005
Может пригодится. Однажды скачал такую штуку:
FileMerlin 5.0 (4.66Mb) конвертирует файлы устаревших текстовых редакторов, редакторов таблиц и файлы баз данных в различные форматы MS Word 97, 2000, 2003 XML, RTF или в текстовый файл, в котором поля разделены запятыми.
Входные форматы - 75 видов.


------------------
В действительности все иначе, чем на самом деле.
                                      (Антуан де Сент-Экзюпери)
Ratings: 0 negative/0 positive
Re: определение формата файла данных
Анонимный пользователь
Автор
хочу сделать некоторое уточнение - файлы явно от движка некой достаточно новой СУБД, движок которой полностью встраивается в программу (ни одна DLL кроме сторонних библиотек не подгружается!)
Возможно, свой формат - но вообще-то сильно сомневаюсь (смысла нет)...
Еще может быть (а может ли?), что специально для "секретности" меняются n байтов ручками (к примеру, все вкупе очень похоже на базу Paradox или SQL Anywhere - меняем несколько байт - штатный провайдер уже не откроет - потом распаковываем в область памяти, меняем взад - работаем)...

К сожалению, это не красивые давно (много лет назад!) обмусоленные случаи "dbf-ки формата XXX..."
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 29 (Гостей: 29)

© 2000-2024 Fox Club 
Яндекс.Метрика