Konversi CSV ke JSON (dan JSON ke CSV)
Konversi CSV ke JSON (dan JSON ke CSV): tempel tabel atau JSON, pilih arah, lalu salin atau unduh hasilnya. Alat ini mengenali pemisah (koma, titik koma, tab, atau garis tegak) sendiri, mengubah angka menjadi angka sungguhan, dan melaporkan kesalahan beserta nomor barisnya. Data Anda tidak keluar dari browser.
Sumber: § 2, IETF RFC 4180 – Common Format and MIME Type for Comma-Separated Values (CSV) Files. Diperbarui: .
Cara menghitung
CSV (comma-separated values) adalah format tabel paling sederhana: satu baris per data, kolom dipisah oleh pemisah. JSON adalah format data untuk API web. Alat ini mengonversi ke dua arah, seluruhnya di browser Anda.
Cara mengubah CSV ke JSON
- Tempel teks CSV (dari spreadsheet: salin sel lalu tempel, pemisahnya berupa tab).
- Biarkan arah “CSV → JSON”. Pemisah terdeteksi otomatis; pilih sendiri bila perlu.
- Pilih bentuk: daftar objek (tiap baris menjadi
{"kolom": nilai}) atau daftar berisi daftar. - Salin hasilnya atau unduh sebagai
daten.json.
Tipe: angka atau teks?
CSV tidak punya tipe data: semuanya teks. Dengan “Kenali angka dan true/false”, nilai diubah menjadi angka JSON, tetapi hanya bila tidak ada yang hilang: angka harus valid menurut RFC 8259 § 6 (tanpa nol di depan, tanpa tanda plus, tanpa koma desimal) dan muat dalam 15 digit signifikan. Kode pos seperti 01234, nomor telepon, dan nomor kartu tetap berupa teks. Angka berkoma seperti 1,5 juga tetap teks.
Mengubah JSON ke CSV
Daftar objek menjadi tabel: kolomnya adalah gabungan semua kunci menurut urutan kemunculan pertama, nilai yang tidak ada dibiarkan kosong. Objek dan daftar bersarang ditulis sebagai teks JSON di dalam sel karena CSV tidak punya kedalaman. Kolom yang berisi pemisah, tanda kutip, atau baris baru diberi tanda kutip sesuai RFC 4180.
Batasan
- Masukan yang sangat besar (lebih dari 5 juta karakter) ditolak agar browser tidak macet.
- Excel hanya menampilkan aksara non-ASCII dari CSV UTF-8 dengan benar bila file diawali byte order mark (BOM) – file unduhan sudah menyertakannya.
- Rumus di dalam sel (
=SUM(…)) berisiko di spreadsheet; “perlindungan rumus” menetralkannya saat ekspor.
Pertanyaan umum
Bagaimana cara mengubah CSV ke JSON?
Tempel CSV ke kolom masukan dan pilih “CSV → JSON”. Baris pertama menjadi kunci, tiap baris berikutnya menjadi satu objek. Salin atau unduh hasilnya.
Mengapa CSV saya memakai titik koma, bukan koma?
Spreadsheet dengan pengaturan Indonesia memakai koma sebagai pemisah desimal, sehingga pemisah daftar ditulis titik koma. Alat ini mengenali keduanya; jika ragu, pilih pemisah secara manual.
Apakah angka nol di depan (misalnya kode pos) tetap ada?
Ya. Nilai dengan nol di depan tetap berupa teks karena angka JSON tidak boleh diawali nol (RFC 8259). Untuk menjadikan semuanya teks, matikan “Kenali angka dan true/false”.
Bagaimana JSON bersarang saat diubah ke CSV?
CSV itu datar, jadi objek dan daftar di dalam satu data ditulis sebagai teks JSON di dalam sel. Ratakan dulu strukturnya bila Anda butuh tabel sederhana.
Bagaimana mengubah CSV ke JSON dengan Python?
Dengan pustaka standar: csv.DictReader(file) membaca baris sebagai dictionary dan json.dumps(list(reader), ensure_ascii=False, indent=2) menuliskannya sebagai JSON. Untuk konversi sekali pakai, halaman ini lebih cepat.
Apakah data saya diunggah ke server?
Tidak. Konversi berjalan di browser tanpa permintaan ke server. Masukan juga tidak disimpan dan tidak ditambahkan ke alamat halaman.
Sumber dan dasar hukum
- § 2: IETF RFC 4180 – Common Format and MIME Type for Comma-Separated Values (CSV) Files
- STD 90, §§ 2, 6: IETF RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format
- OWASP – CSV Injection
Diperbarui:
Alat terkait
- JSON formatter, validator, dan minifyJSON formatter online: validasi JSON sesuai RFC 8259, lihat error lengkap dengan baris, kolom, dan penjelasannya. Rapikan, minify, urutkan key – di browser.
- XML validator dan cek CSV onlineXML validator online: cek apakah XML well-formed dan CSV sesuai RFC 4180 – error dengan baris dan kolom, deteksi pemisah, pratinjau tabel. Tanpa upload.
- YAML ke JSON: konverter (dan JSON ke YAML)YAML ke JSON dan JSON ke YAML sesuai YAML 1.2: daftar, anchor, blok teks, dan komentar. Galat menunjukkan nomor baris. Di browser Anda, tanpa unggah.
- Base64 decode dan encode onlineBase64 decode dan encode online, termasuk Base64url dengan UTF-8 yang benar, serta URL encode/decode (percent-encoding). Pesan error jelas, berjalan di browser.
- Bandingkan teks: cek perbedaan dua teksBandingkan dua teks online: tandai perbedaan per baris, kata, atau karakter dan lihat persentase kemiripannya. Gratis, privat, berjalan di browser Anda.
- Cek dan hitung check digit dengan algoritma LuhnValidasi nomor dengan algoritma Luhn (mod 10, ISO/IEC 7812-1) atau hitung check digit-nya – hanya cek format, berjalan sepenuhnya di browser Anda.