A flat text to comma separated values converter

txt2csv.py is a small python script to convert a flat database file (a text file where fields have a fixed column width) to a csv file (where fields are identified by a separator, usually “;”). It is tested with files up to hundreds of megabyte, and it is relatively fast.

To realize this conversion the script needs a second file including the information on how to split the original file. This “mask file” will be in the form of: FIELD_NAME;FIELD_SIZE (with one field for each row)

To run this software you need the python interpreter. If it is not already installed on your machine please download it from http://python.org.

txt2csv.py is Free Software, released under GNU General Public Licence, version 2.

Bugs reports and comments are welcome to blackhole a.t. lobianco.org

Many thanks for using this software !
Antonello Lobianco

Usage: txt2csv.py [input_file] [output_file] [mask_file]

 -> is a flat text datafile where fields have a fixed length
 -> is a standard csv file
 -> is a text file describing how to split the fields, in the form
    FIELD_NAME;LENGTH (one for each row). Field name is optional.

Example of a flat database:

    John     Smith 35        Freedom Street 10
  Mickey     Mouse 55    Disneyland Avenue 185
John Jr.     Smith  3        Freedom Street 10

Example of a maskfile:


Resulting csv file:

"      John";"     Smith";" 35";"        Freedom Street 10";
"    Mickey";"     Mouse";" 55";"    Disneyland Avenue 185";
"  John Jr.";"     Smith";"  3";"        Freedom Street 10";
personal/portfolio/txt2csv.txt · Last modified: 2018/06/18 15:11 (external edit)
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0