Convert DBF to CSV
Shapefiles, FoxPro,
dBASE — all read.
Free DBF to CSV converter. Reads dBASE III, IV, 5 and 7 binary .dbf files — Shapefile attribute tables, FoxPro databases, LibreOffice Base exports. Field schema shown on load. Pure JavaScript, no upload, no server.
All standard dBASE and FoxPro field types are handled.
| Type | Name | How CSVShift converts it |
|---|---|---|
| C | Character | Trimmed ASCII string — the most common type |
| N | Numeric | Parsed as integer or float, empty for blank fields |
| F | Float | Same as N — floating-point numeric string |
| L | Logical | T/Y/true → "true", F/N/false → "false" |
| D | Date | YYYYMMDD → ISO 8601 format YYYY-MM-DD |
| I | Integer (dBASE 7) | 4-byte little-endian signed integer |
| B | Double (dBASE 7) | 8-byte IEEE 754 double precision float |
| M | Memo pointer | Empty — memo data is in a separate .dbt/.fpt file |
| T | Datetime | Raw value as string — Julian date + milliseconds |
The same binary format used to build CSV to DBF — now read in reverse.
CSVShift reads the 32-byte file header to find the record count, header size and record size. It then reads the 32-byte field descriptor blocks — one per column — extracting field name, type, length and decimal count. These are shown in the field schema immediately on upload, before clicking Export.
Each record starts with a deletion flag byte. Records marked with * (0x2A) are deleted — CSVShift skips these by default. Each field is extracted from its fixed byte position and decoded according to its type: C fields trimmed, N/F fields parsed as numbers, D fields converted to ISO dates.
The decoded records are serialised to CSV with your chosen delimiter. Field names from the DBF schema become the CSV header row. UTF-8 BOM encoding ensures correct display in Excel when the file is opened directly.
Shapefiles consist of .shp (geometry), .shx (index) and .dbf (attributes). When you only need the attribute data — without the geometry — uploading just the .dbf file here extracts it as a CSV without needing QGIS, ArcGIS or any GIS software installed.
Business applications built on dBASE, Clipper and FoxPro store data in .dbf files. Converting these to CSV is the first step in migrating legacy data to modern databases like PostgreSQL, MySQL or cloud CRM systems.
Excel 2013+ removed native DBF support. Convert the .dbf to CSV here and open the CSV in Excel — all data is preserved with correct column types. No Office plugins or ODBC connections required.
CSV is the standard input for pandas, R, Julia and most data science tools. Converting .dbf files to CSV before loading into analysis pipelines avoids installing specialised DBF reader libraries in production environments.
dBASE binary read
in your browser. No server.
CSVShift reads the dBASE binary format directly in JavaScript — no dbfread, no SheetJS, no server. The same format knowledge used to write .dbf files in CSV to DBF is used here to read them. The field schema is shown immediately on upload so you can verify the file contents before exporting.
from dbfread import DBF; import pandas as pd; df = pd.DataFrame(iter(DBF('file.dbf', encoding='latin-1'))). Requires pip install dbfread. The encoding is critical — most DBF files use Latin-1 or Windows-1252, not UTF-8.