Convert CSV text into JSON. Choose header objects or raw arrays, and set the delimiter to auto, comma, semicolon or tab. The parser handles quotes, doubled quotes, and CR/LF normalization. Entirely blank rows are dropped.
Verified example
Input:
name,city
모듈,"서울, 강남"
Header mode yields an object with name and city where city is 서울, 강남. Array mode yields a two-dimensional array including the header row. A Hangul-only header row such as 이름,도시 becomes keys column_1 and column_2 after ASCII normalization—that is intentional.
- Trim and lowercase
- Replace non
[a-z0-9] runs with _
- Strip edge underscores
- Fall back to
column_N when empty
- Suffix
_2, _3 on collisions
So User Name becomes user_name. Prefer English headers when downstream code expects stable keys.
Operator checklist
Confirm encoding before conversion; mojibake cannot be fixed here. Prefer the text import path in spreadsheets so phone numbers keep leading zeros. If auto-detect picks the wrong delimiter, set it manually. Unclosed quotes abort with a clear error.
For encoding background see the Korean CSV guide on the site; for JSON cleanup open the JSON formatter or the workbench.
End-to-end dry run
- Export UTF-8 CSV (BOM optional but helpful for Excel users).
- Open the file in a text editor and copy a header plus two data rows.
- Paste here, confirm delimiter, convert with headers.
- Inspect key names. If you see
column_N, rename headers to ASCII or switch to array mode.
- Pretty-print the JSON in the JSON formatter before shipping the fixture.
Leading zeros in phone numbers die in spreadsheets, not in this converter. Fix cell formats upstream. Prefer explicit delimiters in automation; auto-detect is for exploratory paste sessions.
Array mode is the escape hatch for messy headers and for files that are really grids without semantics. Map columns in application code when Unicode headers must survive as display labels rather than object keys.
Delimiter field notes
European exports often use semicolons because the comma is a decimal mark. TSV appears when fields themselves contain many commas. Auto-detect looks only at the first handful of non-empty lines; a wide prose cell with commas can confuse it, which is why manual selection exists.
Completely empty rows disappear from the output. Short rows pad missing cells with empty strings so object keys still align. That padding is visible in JSON as "" values—decide whether your consumer wants blank strings or omitted keys before you ship.
If you are validating a vendor file, keep a golden sample next to the parser tests and re-paste it here whenever the vendor changes quoting rules. Five minutes of manual confirmation beats an hour of production firefighting.
FAQ
Why did a Hangul header become column_1?
Header mode keeps only ASCII letters and digits in keys. Hangul-only headers become column_N. Use array mode if you must preserve non-ASCII header text as data.
How does auto delimiter detection work?
It scores comma, semicolon and tab on the first non-empty lines and picks the highest count. Ties prefer comma.
Are commas inside quotes safe?
Yes. Quoted fields may contain commas. Escape a literal quote by doubling it.
Is the file uploaded?
No. Paste or local file read stays in the browser.