Format reference
One page per format: what it is, who uses it, how to open it, and the specific ways it surprises people. Written because most of the questions that reach a converter are really questions about the format.
Data
- CSVComma-separated values. The plainest way to move a table between programs.
- ExcelMicrosoft Excel workbooks, both the modern .xlsx and the older .xls.
- JSONJavaScript Object Notation. The default shape for web APIs.
- TSVTab-separated values. What you get when you copy cells out of a spreadsheet.
- JSON LinesOne JSON object per line. Streams and appends where plain JSON cannot.
- YAMLIndentation-based configuration format. Readable, and unforgiving about tabs.
- SQLINSERT statements, with a CREATE TABLE if you want the schema too.
- OFXOpen Financial Exchange, the statement download your bank offers.
- QIFQuicken Interchange Format. Older than OFX and still everywhere.
- IIFIntuit Interchange Format, exported by QuickBooks Desktop.
- MySQL OutputThe box of pipes and dashes the MySQL command line prints.
- TOMLAn array of tables, one per row. Config-file friendly.
- INIOne section per row, keyed by the first column.
Markup
Documents
- MarkdownPipe-delimited tables for README files, docs sites and GitHub issues.
- LaTeXA tabular environment, with booktabs rules if your document loads it.
- Plain TextFixed-width columns padded with spaces. Reads fine in any editor.
- PDFPulls tables out of text-based PDFs, and writes them back out again.
- ASCII TableA grid drawn with plus signs and dashes. Safe in any terminal.
- Box-Drawing TableThe same grid drawn with Unicode box characters.
- reStructuredTextSimple tables for Sphinx and Python documentation.
- AsciiDocA cols-attributed table block for Antora and AsciiDoctor.
- MediaWikiwikitable markup for Wikipedia and any MediaWiki install.
- Trac WikiDouble-pipe rows for Trac.
- TextileTextile table markup, header row included.
- BBCodeForum table tags for phpBB and its descendants.
- JiraJira wiki markup, which is close to but not the same as Markdown.
Code
- PHP ArrayA nested associative array, ready to paste into a PHP file.
- RubyAn array of hashes with symbol keys.
- ActionScriptA typed Array of object literals.
- ASPA two-dimensional VBScript array with explicit assignments.
- MATLABCell arrays fed into table(), one variable per column.
- Pandas DataFrameA pd.DataFrame built from a dict of columns.
- R DataFramedata.frame() with stringsAsFactors switched off.
Schemas
- Avro SchemaA record schema with types inferred per column, nullable where needed.
- Protobuf SchemaA proto3 message with numbered fields.
- FirebaseA keyed object shaped for a Realtime Database import.
- QlikA LOAD INLINE block for a Qlik load script.
- DAXA DATATABLE expression for Power BI.
- RDFTurtle triples, one subject per row.