0.2.0 • Published 4 years ago

paradox.js v0.2.0

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

Paradox.js

A library for reading paradox database files (*.db)

Usage

  var ParadoxTable = require("paradox.js")
  var fs = require("fs")
  
  var file = fs.readFileSync("path/to/file")
  var table = new ParadoxTable(file)

Getting records

You have to import the ParadoxTable and use .findRecords() method in order to get all records. This method also accepts an object which can contain the following properties: maxBlockNumber (an integer), filter (a function), disableWarning (a boolean).

  var records = table.findRecords({
    filter: function(record){
      if(someCriteria(record)){
        return true
      }
      return false
    }
  })

When the file size exceeds 100mb it will probably produce a memory error, so the use --max-old-space-size flag when running your script.

Creating a CSV file

  table.dumpToCSV()

The .dumpToCSV() method will create a output.csv file. This method also accepts a callback which will receive an array of records (a record is an array of Fields) in case you want to have more control over the output.

Notes

The following data types: Memo BLOb, Binary Large Object, Formatted Memo BLOb, OLE, Graphic BLOb, BCD and Bytes are currently not supported, so you will have to decode them yourself.

TODO

  1. Add support for more data types.
  2. If possible, improve perfomance and maybe do some refactoring.

There are some links below, as well as some documentation written by Randy Beck and Kevin Mitchell in /documents in case you want to contribute:

0.2.0

4 years ago

0.1.7

4 years ago

0.1.4

4 years ago

0.1.3

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago