How to Open & Browse a dBASE DBF File: Step-by-Step Tutorial
🗃️ Open the DBF Viewer and follow along with this tutorial.
Open Tool →Steps
This tutorial walks you through opening and exploring a dBASE DBF database file using the free FinancialDataTools.com DBF Viewer. The tool parses your .dbf file using a native JavaScript parser built directly into the viewer — nothing is sent to any server, and no install or plugin is required.
Try the DBF Viewer — runs entirely in your browser and never uploads your files.
Open the DBF Viewer →Step 1: Locate Your DBF File
Find the .dbf file you want to inspect. DBF files are the native database format for dBASE, FoxPro, Visual FoxPro, and Clipper applications. Common sources of DBF files include:
- Legacy accounting and bookkeeping software built on dBASE or Clipper
- FoxPro and Visual FoxPro business applications
- Geographic data: Shapefiles always include a companion
.dbfattribute file - Export files from older ERP or CRM systems
- Historical business databases that have never been migrated to a modern platform
The viewer supports dBASE II, III, IV, 5, FoxPro 2.x, Visual FoxPro, and FoxBASE formats. The version is automatically detected from the file header and shown in the stats bar once the file is loaded.
Step 2: Open the DBF Viewer
Navigate to financialdatatools.com/viewers/dbf-viewer/ in any modern desktop browser. No login, account, or installation is required. The viewer works best on desktop — mobile screens are too small for comfortable record browsing.
Step 3: Load Your File
There are two ways to open your DBF file:
- Click the green "Open File" button in the toolbar and select your
.dbffile using the system file picker. - Drag and drop your file anywhere onto the viewer window.
The viewer reads the binary DBF format using a JavaScript parser and displays the data almost instantly. The stats bar at the top of the grid will show:
- Records: The number of active (non-deleted) records in the file
- Fields: The number of field columns
- Version: The detected dBASE format (e.g., dBASE III, Visual FoxPro, FoxPro 2.x)
If your file contains deleted records (marked with the dBASE deletion flag), they are automatically skipped — only active records are displayed. This is consistent with how dBASE itself handles records before a PACK operation.
Step 4: Browse Records and Fields
Records appear in a spreadsheet-style grid with one row per database record. Each column header shows:
- The field name (up to 10 characters, as stored in the DBF header)
- A field type badge — CHAR (text), NUM (numeric), DATE, BOOL (logical), or MEMO
- A tooltip showing the full dBASE type code (C, N, D, L, M, F) when you hover over the badge
- A filter button (funnel icon) to open the column filter panel
Field values are automatically converted to their natural representation:
- Character fields (C) are trimmed of trailing spaces
- Date fields (D) are formatted as
YYYY-MM-DD - Logical fields (L) are shown as
trueorfalse - Numeric fields (N, F) are parsed as numbers and right-aligned in blue
- Memo fields (M) show the memo pointer — actual memo content requires the associated
.dbtfile - Empty or whitespace fields are shown as
NULL
Click any cell to open the Cell Detail Panel on the right, which shows the full untruncated field value, the field name, the dBASE type code, and the declared field length.
Step 5: Sort and Filter Records
Sorting: Click any column header to sort records by that field. The first click sorts ascending, the second descending, and a third returns to original file order. Numeric and date fields sort by their native value; character fields sort alphabetically.
Global search: Use the search box in the toolbar to find values across all fields simultaneously. Any record not matching the search term in any field is hidden.
Column filters: Click the filter icon in any column header to open the field filter panel. Two modes are available:
- Values mode: A checklist of all distinct values in that field. Uncheck values to hide matching records. A search box inside the panel helps you find specific values in long lists.
- Conditions mode: Apply a custom condition such as "contains", "equals", "greater than", "begins with", or "is empty". Combine two conditions with AND or OR logic for precise filtering.
Multiple active column filters are combined with AND logic. The pink badge in the stats bar shows the count of active filters — click it to clear all column filters at once.
Step 6: Inspect the Field Schema
Click the Schema button in the toolbar to open the field definition modal. For each field, it displays:
- Field name — as declared in the DBF header
- Type — the single-character dBASE type code (C, N, F, D, L, M, etc.)
- Len — the field's declared byte length
- Dec — the number of decimal places (for numeric fields; 0 for all others)
This information is essential when planning a migration from DBF to a relational database. The field lengths tell you the maximum size for each column, and the type codes map directly to SQL types: C → VARCHAR, N → NUMERIC or INTEGER, D → DATE, L → BOOLEAN.
Use the Copy Field List button to copy the full schema as plain text — a fast way to document the DBF structure or draft a CREATE TABLE statement for a migration target.
Step 7: Export Your Data
Click the Export button in the toolbar to open the export dialog. Four formats are available:
- CSV — flat comma-separated file; dates formatted as YYYY-MM-DD; NULL values as empty strings
- JSON — array of objects with field names as keys; useful for developers or migration pipelines
- Excel (.xlsx) — workbook with frozen header row, auto-sized columns, and an attribution sheet
- TSV — tab-separated; useful when field values contain commas
Two export scopes are available:
- Filtered view — exports only the records currently visible after applying your search and column filters
- All records — exports every active (non-deleted) record in the file, ignoring filters
Tip: When migrating a DBF database to SQL or another format, use the All records scope to export every record regardless of any filters you've applied during exploration.
