CSV sa JSON Converter
I-convert ang CSV data o mga file sa JSON format kaagad sa iyong browser. Sinusuportahan ang mga custom na delimiter, pagtukoy ng header, at magandang pag-format.
Piliin ang CSV file
o i-drag at i-drop dito
I-convert ang CSV data o mga file sa JSON format kaagad sa iyong browser. Sinusuportahan ang mga custom na delimiter, pagtukoy ng header, at magandang pag-format.
o i-drag at i-drop dito
Ang CSV (comma-separated values) at JSON (JavaScript Object Notation) ay parehong nasa lahat ng dako ng mga format ng pagpapalitan ng data, ngunit magkaiba ang paglalarawan ng mga ito sa data. Ang CSV ay flat at tabular: ang isang header row ay tumutukoy sa mga pangalan ng field, at ang bawat kasunod na row ay nagtataglay ng mga value ng isang record. Hierarchical ang JSON: nakabalangkas ang data bilang mga object (mga pares ng key-value) at mga array, na sumusuporta sa nesting at mas mayayamang uri. Ang pag-convert ng CSV sa JSON ay karaniwang nangangahulugan na gawing JSON object ang bawat CSV row na ang mga key ay nagmumula sa header row at ang mga value ay ang mga cell ng row.
Ang converter na ito ay nag-parse ng CSV gamit ang PapaParse, ang pinaka-maaasahang CSV library sa JavaScript ecosystem. Pinangangasiwaan ng PapaParse ang mga quirk na nagpapahirap sa CSV: mga sinipi na field na naglalaman ng mga kuwit, mga naka-escape na quote sa loob ng mga sinipi na field, pinaghalong linya ng mga dulo, mga opsyonal na BOM marker, at mga field na naglalaman ng mga bagong linya. Ang output ay nakabalangkas na JSON, na naka-format na may two-space indentation bilang default para sa pagiging madaling mabasa.
Dalawang format ng output ang sinusuportahan. Ang array-of-objects (ang default) ay gumagawa ng [{header1: value1, header2: value2}, ...], ang pinakakaraniwang JSON na hugis para sa tabular na data. Ang mga array-of-array ay gumagawa ng [[header1, header2], [value1, value2], ...], na pinapanatili ang pagkakasunud-sunod ng column nang hindi gumagamit ng mga pangalan ng header bilang mga susi.
Karamihan sa mga modernong API at application ay nagsasalita ng JSON. Ang paglo-load ng data mula sa isang CSV export — isang ulat sa pagbebenta, isang listahan ng contact, isang database extract — sa isang JavaScript application, REST API, o NoSQL database ay karaniwang nangangailangan ng pagdaan muna sa JSON. Ang conversion din ang unang hakbang para sa maraming pagbabagong-anyo ng data, dahil mas madaling manipulahin ang JSON sa programmatically kaysa sa CSV.
Binubuksan din ng istruktura ng JSON ang mga feature na hindi maaaring katawanin ng CSV. Ang mga bagay na may mga nested na property, mga array na may iba't ibang haba bawat record, at tahasang uri ng impormasyon (mga string kumpara sa mga numero kumpara sa mga boolean) ay magiging available lahat kapag nasa JSON na ang data. Ang mga alternatibong CSV tulad ng TSV ay umiiral ngunit may parehong limitasyon sa pagiging patag.
I-paste o i-upload ang iyong CSV, kumuha ng JSON.
Ipinapatupad ng PapaParse ang RFC 4180 (ang spec ng CSV) at mga extension para sa mga pagkakaiba-iba na naglalaman ng mga real-world na CSV file. Ang mga sinipi na field ay maaaring magsama ng mga kuwit, bagong linya, at mga quote na character (na-escape sa pamamagitan ng pagdodoble). Ang mga header, kapag naroroon, ay makikita mula sa unang hilera. Ang mga numeric at boolean na halaga ay maaaring awtomatikong i-type (naging mga aktwal na numero o boolean sa halip na mga string) o panatilihin bilang mga string.
Ang output na JSON ay nabuo gamit ang JSON.stringify na may opsyonal na indentation. Na-escape ang mga string para sa JSON syntax (backslash, quote, control character), at ginagamit ng mga istruktura ang hiniling na format (array ng mga bagay o array ng mga array).
Mga Edge case na pinangangasiwaan: BOM sa pagsisimula ng file, magkahalong linya ng mga dulo (\n vs \r\n), mga walang laman na cell (na-render bilang walang laman na mga string o null depende sa mga setting), mga sumusunod na bagong linya, at mga hilera na may iba't ibang bilang ng field. Ang katatagan ng PapaParse ay ginagawa itong karaniwang JavaScript CSV library.