Reputation: 7254
today I got a copy of an old system from which I need to import data. The system is written in C and runs in DOS. It uses some kind of database. The file format seems to be rather simple(1 file = 1 table, header contains some description and then records, fields are delimited by 0 ASCII character, but it's not that simple as it seems).
The question is: how to recognize what database is used?
Is there any kind of software that maybe opens many formats?
Or is there any software that could help me?
Or any links to sites describing dos databases?
Or just anything that can help will be appreciated:)
PS> I can post some small files from the db if anyone wants to try guessing.
One small db file:
http://www.2shared.com/file/9137583/f840f261/WCENNIK.html
Upvotes: 3
Views: 4265
Reputation: 1
Is the original application functional? Poke around a bit, and you may find a way to export the data. Another thing to try is to "print" application reports to text file.
Upvotes: 0
Reputation: 1915
Sounds like a dBase file to me. They were very common. It's not necessary for DBF to appear in the header. See the format description here:
http://www.dbase.com/knowledgebase/int/db7_file_fmt.htm
edit Better link:
http://www.clicketyclick.dk/databases/xbase/format/
What's the value of the first byte?
I just double checked some DBF files that I have on hand and they do not have DBF in the header.
Upvotes: 1
Reputation: 28056
Almost every version of Unix including linux and Mac OS has a command called "file" that recognizes a huge range of file types by their content. Try copying one of the data files to a Mac OS or Linux computer and running
file [filename]
from the command line.
Upvotes: 2
Reputation: 29041
Most of those older flat-file apps used proprietary(ie, non-standard) formats. If the db is a standard format, you should see some kind of identifier close to the header that tells you what it is.
If you can't determine the format by visually inspecting the file in a hex editor, your best bet is to trace through the C code that reads each record and reverse-engineer the format.
Upvotes: 1