{ DFT2GED v1.0 }

Windows command line utility

DFT2GED is a simple command line utility that takes a dft database and converts it back to GEDCOM format. It will read both DTA files as well as the zip file archives the DftCom2 compiler creates. The DFT files do not contain the original GEDCOM information. Like many other compilers, data is lost in the process. The DftCom2 compiler only supports a limited set of GEDCOM tags and ignores the rest, it also combines some date and place information, making it very hard to programmatically parse apart. I have done my best to have the program do most of the work, but some hand editing of the GEDCOM output may be necessary. This is a command line application, but a GUI frontend is in the works that allows simple drag-and-drop file support..
Here is an example of a conversion:

dft2ged Example

You can see from the above example that warnings show place fields that may contain date information, these may have to be edited by hand to move the information to the correct field. This is because the DFT compiler combines date and place information into a single string separated by commas. If the de compiler can't tell where the division is between date and place it will error on the side of place because most programs that read GEDCOM files complain about bad date formatting, but don't care about what is in the place field.
The program's usage is pretty simple:

dtf2ged Copyright (c) ChalkTrauma, DreamCycle Studios 2007.
All rights reserved.
1.0.0 Jan  8 2008 @ 23:36:27

USAGE:

   dft2ged  [-f <string>] [-o <string>] [-r] [-s] [-i] [-I] [-n] [-d] [-p]
            [--] [--version] [-h] <fileNameString> ...


Where:

   -f <string>,  --date_format <string>
     how to identify dates (regex)

     default: (\bFROM\b|\bTO\b|\bABT\b|\bBEF\b|\bAFT\b|\bBET\b|<|>|\~
     |\(\xB1\))*( )*(((\b[0-9]{1}\b|\b[0-9]{2}\b)( )+(\bJAN\b|\bFEB\b
     |\bMAR\b|\bAPR\b|\bMAY\b|\bJUN\b|\bJUL\b|\bAUG\b|\bSEP\b|\bOCT\b
     |\bNOV\b|\bDEC\b)( )+(\b[0-9]{4}\b))|((\bJAN\b|\bFEB\b|\bMAR\b|\bAPR\b
     |\bMAY\b|\bJUN\b|\bJUL\b|\bAUG\b|\bSEP\b|\bOCT\b|\bNOV\b|\bDEC\b)(
     )+([0-9]{1}|[0-9]{2})( )+(\b[0-9]{4}\b))|((\bJAN\b|\bFEB\b|\bMAR\b
     |\bAPR\b|\bMAY\b|\bJUN\b|\bJUL\b|\bAUG\b|\bSEP\b|\bOCT\b|\bNOV\b
     |\bDEC\b)( )+(\b[0-9]{4}\b))|((\b[0-9]{1}\b)|(\b[0-9]{2}\b))(
     )+(\bJAN\b|\bFEB\b|\bMAR\b|\bAPR\b|\bMAY\b|\bJUN\b|\bJUL\b|\bAUG\b
     |\bSEP\b|\bOCT\b|\bNOV\b|\bDEC\b)|(\bJAN\b|\bFEB\b|\bMAR\b|\bAPR\b
     |\bMAY\b|\bJUN\b|\bJUL\b|\bAUG\b|\bSEP\b|\bOCT\b|\bNOV\b|\bDEC\b)
     |(\b[0-9]{4}\b))

   -o <string>,  --output <string>
     output file

   -r,  --recurse
     Recurse through file system..

   -s,  --show
     Show list file comments.

   -i,  --info
     Show file info and quit.

   -I,  --Ignore
     Ignore all errors and keep processing.

   -n,  --note
     Add DFT info filed to end of note entry.

   -d,  --detailed
     Maximum verbosity..

   -p,  --place_check
     Check PLAC field for date string..

   --,  --ignore_rest
     Ignores the rest of the labeled arguments following this flag.

   --version
     Displays version information and exits.

   -h,  --help
     Displays usage information and exits.

   <fileNameString>  (accepted multiple times)
     file names


   Convert a dft file to a GEDCOM file.

To convert a file simply type:

dtf2ged myfile.dta

This will create a myfile.ged in the same directory.

You can also specify the output file name:

dft2ged myfile.dta -o myfile2.ged

You can also process zip archives:

dft2ged dftdbs.zip

You can use wildcards and filelists to process groups of files:

dft2ged *.dta

dft2ged @files.lst

Do not use the -o switch with wildcards of file lists, because it will write over the output file for each input file it processes. It is better to let the program create a file name with the ged extension.

By using the -r switch you can recurse down a directory tree processing every file that matches the input specification. This can be useful for multiple files under one directory tree.

Use the -d switch to turn on debugging messaging is you need to see how processing is being done.

By using the -f switch with a argument you can pass in a regular expression that the program uses to identify dates in strings.

The -i switch can be used to dump out just the header information from a dta file:

c:\>dft2ged -i dftdbs.zip

    Processed file: dftdbs.zip
         Code page: Cp1252
           Version: v10.02
       Individuals: 1019
          Families: 284
             Total: 1303
The app will exit immediately on an error. A good example of this is a readonly or locked file. If you want to continue processing files even though one failed use the -I switch to tell the app to ignore errors.

You can also use this tool recursively by using the -r switch to recurse through directories.

The filename can be replaced by a file that contains a list of files to be processed. This is specified by a '@' before the file name, for example:

dft2ged @myfiles.lst -s

This will look for the file myfiles.lst and process those files. List files can contain references to other list files by using the same syntax as the command line. List files are just text files, with one file name per line, as mentioned before, these filenames may also be file lists denoted by an '@' before the name.

Don't worry about circular references or duplicate entries as they are ignored during processing.

List files can contain comments inth e form:

;this is a comment

If you want to view the comments as they are processed use the -s switch.
IMPORTANT INFOMATION

I strongly suggest you use the -p and -n switches. The -n switch will create a note field with the original time and place combined string that is read from the DFT file, this preserves the original data before the program tries to take it apart. The -p switch checks the PLAC field for anything that looks like it might be a date and dumps out a warning to the screen with a line number. This allows you to examine the warning and possibly edit the line that may contain the date.
Download:

Since this is a simple command line application I don't have an installer, just a simple self extracting archive. Just download the exe, run it, and choose a folder to write it to. Then start a windows command shell ( cmd.exe ) and type dft2ged -h to get the usage.. Good luck...

portableDownload self-extracting archive ( no installer, includes local runtime ) [~1.1Mb]