FileTypeConverters

Convert CSV to JSON Lines

CSV records are normalized into the shared table IR before JSONL is written, so row order is preserved but container-specific metadata is not carried forward.

Fidelity

What actually changes

  • CSV records are normalized into the shared table IR before JSONL is written, so row order is preserved but container-specific metadata is not carried forward.
  • Nested objects become flattened columns with the configured separator when CSV can contain hierarchy that JSONL cannot express directly.
  • Arrays are either stored as JSON strings or expanded into indexed columns according to the arrayMode option.
  • Dates are emitted as ISO-like values unless the destination library supports real spreadsheet date cells.
  • Null cells remain blank in delimited and Markdown output, while JSON-family targets keep explicit null values.
  • Spreadsheet formulas, merges, comments, styling, and charts are discarded because the phase-1 engine preserves data rather than workbook presentation.
  • Multiple input sheets become separate IR tables; single-table destinations write the first table and return a warning.

Options

Delimiter

Choose the separator used when csv or jsonl is a delimited text file.

Header row

Treat the first row as field names instead of generated column labels.

Encoding

Decode UTF-8 or Latin-1 input before parsing text formats.

Flatten separator

Control the characters inserted between nested object keys.

Array mode

Keep arrays as JSON strings or explode them into indexed columns.

Worksheet

Select one workbook sheet when reading XLSX, XLS, or ODS.

Example

input
name,score
Ada,9
Bo,7
output
{"name":"Ada","score":9}
{"name":"Bo","score":7}

Do it in code

python
import pandas as pd
df = pd.read_csv("input.csv")
df.to_csv("output.jsonl", index=False)

FAQ

Can I convert CSV to JSONL in the browser?
Yes. Phase-1 tabular conversions run in a browser worker with pure JavaScript and WebAssembly-safe libraries.
Will formulas be preserved?
No. Formula expressions are dropped and only cached values are exported when spreadsheet readers expose them.
How are nested JSON or XML fields handled?
Nested values are flattened into columns, and arrays are controlled by the arrayMode option.
What happens to multiple sheets?
The IR can hold every sheet, but single-table outputs write the first sheet and include a warning.
Can I keep blank cells?
Blank cells remain null inside the IR and are represented according to the destination format.
Which encoding should I choose?
Use UTF-8 unless the source came from an older Windows or regional export that needs Latin-1.

Related conversions