Skip to content

Bold Retriever is a utility for parsing files generated by Btrieve.

License

Notifications You must be signed in to change notification settings

simotronic/boldRetriever

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bold Retriever

What is Btrieve?

Btrieve is proprietary database software. For more information, look here:

What is Bold Retriever?

Bold Retriever is an alpha-quality utility for parsing binary database files generated by Btrieve (with extension .dbp). It was developed by reverse engineering a single .dbp test file. Btrieve is currently on version 12. The version of that test file is not known. "Your mileage may vary" is be a significant understatement.

How to use:

  1. Install haskell stack: https://docs.haskellstack.org/en/stable/README/

  2. Check out this repository and cd to the repo directory

    stack build

  3. Locate the Btrieve dbp file you want to parse.

  4. Btrieve uses a fixed width format for data, we need to find the positions for each column

stack exec findColumnLengths <your_file.dbp>

  1. Copy the last line outputted below "Boundaries:", you need them for them for the next step.
  • Note: This step is imperfect, column width is probably saved somewhere in the dbp's file control record (FCR), but FCR parsing is not implemented, this utility guesses based on presents of null characters. You can modify the outputted list of numbers to fix bad assumptions made by the utility.
  1. Parse the file stack exec parse <your_file.dbp> "<quoted list of numbers copied in the previous step>"

About

Bold Retriever is a utility for parsing files generated by Btrieve.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Haskell 100.0%