How the separator is found
Comma is only the most common choice, not the only one. German and French exports usually use a semicolon, spreadsheets copy to the clipboard as tab separated text, and log pipelines like the pipe. The viewer tries all four, reads the first 64 KB with each, and keeps the one that splits the file into the most consistent set of columns. If the guess is wrong, pick the separator by hand and the table redraws.
Reading follows RFC 4180 with the relaxations real files need. A double quoted value may hold the separator, line breaks and doubled quotes, records may end in LF or CRLF, blank lines are skipped, and a leading byte order mark from Excel is stripped before anything else happens.
Messy files still open
A row with too few values is padded with empty cells. A row with too many keeps its extra values in generated columns rather than losing them. Empty column names are numbered, repeated column names get a suffix so they stay apart, and a quoted value that was never closed is read to the end of the file. Each of these is reported as a warning above the table, so you can see what was repaired instead of wondering why the numbers look off.
The header switch matters here. Turn it off for a file that starts straight into data, and every column is named Column 1, Column 2 and so on.
Column types and sorting
Each column is sampled and labelled number, date, boolean or text once nine out of ten of its filled values fit. Numbers accept a leading currency symbol, grouped thousands, a trailing percent sign and accounting style negatives in brackets. Dates accept ISO dates and date-times, YYYY/MM/DD, DD.MM.YYYY, MM/DD/YYYY and YYYY-MM. Booleans accept true and false, yes and no, y and n.
The type is what makes sorting useful. A number column sorts 2 before 10 instead of the other way round, a date column sorts chronologically, and a text column sorts naturally so item 2 lands before item 10. Empty cells always go last, whichever direction you pick. The same types drive the comparison conditions, so greater than on a date column really does mean later.
One thing to watch: a comma is always read as a thousands separator, so a value written as 1,5 counts as text rather than as one and a half. Convert those to a dot first if you need them sorted as numbers.
Exports carry the current view
Copy and download always write what the table shows, with the sorting, the search, the conditions and the hidden columns already applied. Pick the separator to write, decide whether the header row goes along, and get a .csv, a .tsv or JSON rows. The JSON export turns number and boolean columns into real JSON values by default and writes empty cells as null, or keeps everything as text when you prefer that.
The same view is what travels onward. Send the table to the Markdown Table Generator to turn it into a Markdown table, to the Config Converter to reshape it into YAML or TOML, or send the JSON to the JSON Inspector to explore it as a tree.
Limits
Files up to 32 MB can be opened and the first 100,000 rows are read, which is enough for the exports people actually inspect by hand. Rows are shown a page at a time so scrolling stays smooth on a wide table. Tables above 256 KB are held for the session only and will not be there after a reload, since a browser's local storage is far too small for them.
This is a viewer, not an editor. Cells cannot be changed here. To build or edit a small table by hand, use the Markdown Table Generator, which imports the same delimited text into an editable grid.