Csvfab


Csvfab — Free Download. CSV Editor

csvfab is a CSV editor built for files that spreadsheets cannot open. It opens a 5-million-row, 770 MB file in under 3 seconds and sorts it in about 2, while Excel and LibreOffice Calc stop at 1,048,576 rows. Filters, per-column searches, regex, formula filters and multi-column sorting work on the whole file, not on a truncated view. Editing happens in place: an unchanged save returns the exact same bytes, and a modified line changes only its own bytes. Malformed files with unclosed quotes, uneven rows or mixed encodings open without damage. The program also cleans data: broken accents, duplicates, noise words, date and phone formats. It runs on Linux, macOS and Windows with Python and a Chromium-based browser.

★★★★★
5.0(1 ratings)
File size: 2.29 MB
The latest version of Csvfab is: 1.23.0
Operating system: Windows
Languages: English
Price: $0.00 USD (Open Source (MIT))
  • File opening and format detection. The program accepts files through tabs, drag and drop, and "Open with" from a file manager. Delimiter, header line and encoding are detected automatically and can be changed from the status bar. Supported encodings include UTF-8, Windows-1252, ISO-8859-1, ISO-8859-15, Mac Roman and UTF-16 with or without BOM. Excel workbooks and JSON files are first written as CSV beside the original, then opened. Every format decision stays visible and adjustable while the file is loaded.
  • Global and per-column filters. Filters can be applied to the entire file or to a single column. Options include accent-insensitive matching, regular expressions and inversion. A filter can also be written as a formula such as num({Amount}) > 1000 && contains({City}, "lyon"). Each change to the filter set recalculates the visible rows without altering the underlying file, and the original bytes remain untouched until a save is confirmed.
  • Column panel with profile and value filter. The column panel lists every column with its type, number of distinct values, minimum, maximum, sum and average. A value filter built from the panel selects matching rows directly. A profile of the whole file places every column on one line, giving a compact overview of the dataset before any editing begins.
  • Sorting and grouping. Clicking a column title sorts by that column, and Shift+click adds more columns to the sort order. Grouping by one or more columns produces counts, sums and averages in a new tab. The scroll strip above the scrollbar shows initials, years or values of the sort column, along with marks for irregular, duplicate and changed rows and the row under the pointer while dragging.
  • Row card and raw line view. The row card opens with Ctrl+I and shows the selected record as a form with every column and its editable value. The raw line of that record is displayed as it exists in the file, with delimiters, quotes and invisible characters marked. This view supports diagnosis of quoting and delimiter problems without leaving the row context.
  • Broken file diagnostics. The diagnostic tool examines the bytes of a suspicious row and reports expected versus observed field counts. It identifies probable causes such as an unquoted delimiter located by the column types it would realign, a line cut by an unquoted line break, a quote never closed, or missing fields. Bytes around each anomaly are shown in hex, including UTF-8 lines inside a Windows-1252 file, garbled accents, NUL bytes and invisible characters, and cells a spreadsheet would execute as formulas. A repair is proposed as an ordinary undoable edit.
  • Spreadsheet-style editing. Editing supports in-place and multi-line changes, range selection, copy and paste with Excel or Google Sheets, series fill by dragging the corner or pressing Ctrl+D, typing into many cells at once, find and replace with regex, and bulk edits on filtered rows. Rows and columns can be inserted, moved, renamed or deleted. Undo returns all the way back to the last save, redo restores undone changes, and pending changes are reviewed against the file on disk before saving.
  • Data cleaning tools. The cleaning set removes duplicates by exact, case-insensitive or slugified comparison, deletes hidden rows, splits and merges columns, fills empty cells from the value above, and strips noise words such as SARL, Monsieur or et Fils from one column or all columns with whole-word matching and accent-insensitive comparison. Dates, numbers and phone numbers are converted to a single format, and a whole-file cleanup handles garbled accents like é, invisible characters, odd spaces, empty rows and empty columns.
  • Computed columns and lookups. Computed columns apply formulas to produce new values from existing fields. Values can be looked up from another open file in a manner comparable to VLOOKUP, which supports reconciliation and enrichment tasks without exporting data to another tool. The results are written as regular cells and remain subject to undo and the pending-change review.
  • File comparison and anonymisation. Two versions of a file are compared on a key column to reveal differences. An anonymisation mode prepares a file for a demo: names are swapped for others with the same initial, e-mails and phone numbers are reshaped, postal codes keep their department, and dates are shifted. The same value always produces the same fake, so relations between records remain consistent.
  • Large file handling. The file stays in memory as its own bytes, and rows are decoded only when displayed or searched. A 2 GB CSV with 20 million rows opens in seconds without freezing the window. Saving copies untouched lines as they are, so the cost of a save is tied to the edits made rather than to the size of the file.
  • Safe writing and backup. Opening and saving without changes returns the same bytes whether the file is valid or not. An edit changes only the bytes of its own line. The save routine rewrites the file in its original delimiter, line endings and encoding, keeps a timestamped .bak before the first overwrite, detects changes made by another program in the meantime, and flags irregular rows. Save as another name, delimiter or encoding is available, along with export to a formatted Excel workbook with typed numbers and dates, a bold frozen header and filters.

Csvfab was created by Fabio Chelly and has been developed since 2023. The program is written in Python and runs with a Chromium-based browser as its rendering layer, which keeps the installation free of a build step and of dependencies beyond Python and that browser. Development has concentrated on byte-level fidelity, so that opening and saving a file without changes returns identical bytes, and on performance for files far beyond spreadsheet limits. A benchmark script, benchmark/run.py, generates test files, runs the compared tools and checks every result before reporting a time, with a median of three runs on an Intel Core Ultra 7 laptop under Linux. At 1 million rows and 153 MB, the program reports open in 0.6 s, filter in 0.2 s and sort in 0.3 to 0.4 s, which places it ahead of VisiData and Modern CSV in the published measurements.

Alternatives to Csvfab

Latest Programs