Lewati ke konten

Konverter JSON ↔ CSV

Konversi CSV, TSV, dan JSON secara lokal dengan sinkronisasi berdampingan, deteksi pembatas, pemetaan header, penanganan header duplikat, dan output salin/unduh.

Pemisah

Indentasi JSON

Gunakan baris header

Pangkas spasi

Lewati baris kosong

JSON

Karakter

0 / 500,000

CSV

Karakter

0 / 500,000

Konverter JSON ↔ CSV

Mulai cepat

1
Tempel atau ketik CSV/TSV di panel CSV; panel JSON diperbarui setelah parser lokal membaca sisi CSV terbaru.
2
Anda juga dapat mengedit JSON di sebelah kiri, dan panel CSV tetap sinkron dari sumber JSON terbaru yang valid.
3
Pembatas diatur ke "Otomatis" secara default. Alat ini memeriksa baris pertama yang tidak kosong dan mendeteksi koma, tab, titik koma, atau bilah vertikal (|).
4
Saat "Gunakan baris header" diaktifkan, baris pertama CSV akan dipakai sebagai nama kunci objek JSON; saat dinonaktifkan, hasilnya diubah menjadi array dua dimensi.
5
Gunakan "Pangkas bidang" dan "Lewati baris kosong" untuk membersihkan data CSV yang berantakan.
6
Unduh JSON sebagai .json. CSV diunduh sebagai .csv secara default; pilih Tab secara manual sebelum mengunduh bila Anda menginginkan nama file .tsv.

Skenario umum

Salin Excel ke JSON

salin rentang sel dari Excel atau Google Spreadsheet, tempelkan teks yang dibatasi tab ke dalam panel CSV, dan ubah menjadi array objek JSON.

Respons API ke spreadsheet

konversikan respons JSON ke CSV untuk analisis di Excel atau Google Spreadsheet.

Persiapan muatan impor

ubah baris CSV yang ditempel menjadi muatan JSON untuk skrip impor atau titik akhir API batch tanpa menjalankan impor di sini.

Tinjauan log

ubah log CSV menjadi JSON sebelum menggunakan alat kueri hilir; halaman ini tidak menjalankan ekspresi jq.

Migrasi tabel pemetaan

alihkan tabel pemetaan yang ditempelkan saat ini antara cuplikan konfigurasi CSV dan JSON datar.

Pembersihan data

bersihkan data yang diekspor dengan cepat dengan pemangkasan bidang dan lompatan baris kosong.

Kontrak Konversi

Panel yang terakhir diedit adalah sumber kebenaran. Perubahan opsi membuat ulang panel turunan dari sisi itu, dan keluaran turunan yang sudah usang tidak disimpan setelah kesalahan penguraian.
Dengan baris header aktif, baris CSV pertama menjadi kunci objek; header kosong menjadi col1/col2, dan header duplikat menerima akhiran _2/_3. Dengan menonaktifkan baris header, CSV menjadi array 2D.
Array objek menjadi header gabungan ditambah baris, array dari array menjadi baris, array primitif menjadi satu kolom, dan satu objek JSON menjadi satu baris. Bidang objek yang hilang menghasilkan sel kosong.
Deteksi pembatas otomatis hanya membandingkan koma, Tab, titik koma, dan pipa pada baris pertama yang tidak kosong di luar kolom tanda kutip. Itu tidak memeriksa seluruh kumpulan data atau mengubah pembatas yang dipilih.
Batasan berjenjang berlaku secara lokal: karakter masukan adalah 500.000rb / 2.000.000 / 5.000.000; Baris CSV berukuran 10.000 / 50.000 / 100.000; kolomnya 100/200/500; sel berukuran 250.000 / 1.000.000 / 2.000.000; Node JSON berukuran 250.000 / 1.000.000 / 2.000.000; Properti JSON adalah 150.000 / 600.000 / 1.200.000; kedalamannya 40/80/120; keluarannya adalah 16/48/96 MiB.

Saran penggunaan

Data yang ditempel dari Excel biasanya dibatasi tab. Deteksi otomatis memeriksa baris pertama yang tidak kosong di luar kolom yang dikutip; jika salah menebak, pilih pembatas secara manual.
Saat "Gunakan baris header" aktif, baris pertama diperlakukan sebagai nama kolom, bukan sebagai data. Jika CSV Anda tidak memiliki header, nonaktifkan opsi ini agar baris data pertama tidak hilang.
Sel header kosong menjadi col1, col2, dan seterusnya. Nama header duplikat mendapatkan akhiran seperti name_2 untuk menjaga kunci JSON tetap unik.
JSON→ CSV menerima array objek datar, array array, array primitif, atau objek tunggal. Array objek menggunakan semua kunci dalam urutan yang pertama kali dilihat, dan bidang yang hilang menjadi sel kosong.
JSON→ CSV bekerja paling baik dengan array objek datar. Objek/array bertumpuk diserialkan sebagai string JSON dalam sel dan tidak diratakan menjadi kolom jalur titik.
Bidang yang berisi pembatas, baris baru, atau tanda kutip ganda secara otomatis dikutip dan di-escape sesuai aturan CSV.
Jika JSON atau CSV tidak valid, panel sumber akan menyimpan masukan Anda dan panel turunan akan dihapus hingga masukan diperbaiki. Kesalahan JSON menyertakan detail baris dan kolom saat parser melaporkannya.

Batas Perjalanan Pulang Pergi

Sel CSV adalah teks. CSV→ JSON tidak menyimpulkan angka, boolean, null, atau tanggal, dan JSON→ CSV→ JSON dapat mengubah nilai yang diketik kembali menjadi string.
Objek dan array JSON yang disarangkan ditulis sebagai string JSON di dalam sel. CSV→ JSON tidak mengurai string tersebut secara otomatis atau membangun kembali objek bertumpuk dari jalur titik, tanda kurung, atau garis bawah ganda.
Penguraian JSON yang ketat mengikuti perilaku nomor JavaScript. Bilangan bulat di luar rentang aman 53-bit dapat kehilangan presisi kecuali Anda menyimpannya sebagai string yang dikutip.
Ini adalah konverter CSV/TSV teks biasa. Itu bisa membaca teks yang disalin dari Excel atau Lembar, tapi tidak mengurai buku kerja .xlsx, lembar, rumus, pemformatan, atau sel gabungan.
Tidak didukung di sini: pengunggahan file, impor URL, konversi file batch, validasi skema CSV, laporan lint CSV, Garis JSON, perataan/perataan bertumpuk, pengetikan dinamis, impor SQL, koneksi Google Spreadsheet, ekspresi jq, tabel pratinjau, tautan berbagi, dan riwayat sisi server.

Batasan & kompatibilitas

CSV adalah format tabel datar dan tidak dapat mewakili struktur bertingkat secara asli. Objek/array JSON yang disarangkan diserialkan sebagai string dan tidak dapat dipulihkan sepenuhnya pada konversi terbalik.
CSV menyimpan nilai sebagai teks. Setelah perjalanan pulang pergi JSON→ CSV→ JSON, angka, boolean, null, dan tanggal dapat muncul kembali sebagai string.
UTF-8 BOM (\uFEFF) dihapus secara otomatis. Pengkodean lainnya (misalnya, GBK atau Shift-JIS) tidak didukung; konversikan ke UTF-8 terlebih dahulu.
Seperti JSON di JavaScript, alat ini mengikuti batasan IEEE 754. Bilangan bulat di luar rentang aman 53-bit mungkin kehilangan presisi.

Privasi & keamanan

Semua pemrosesan terjadi secara lokal di browser Anda. Teks JSON dan CSV adalah draf sesi; preferensi pembatas, header, pembersihan, indentasi, nomor baris, dan pembungkusan tetap ada di perangkat ini. Tidak ada unggahan, sinkronisasi cloud, pengambilan URL, riwayat jarak jauh, atau konversi sisi server.

Pertanyaan umum

5

Lanjutkan langkah berikutnya dengan alat terkait ini.

Seluruh pemrosesan alat terjadi secara lokal di browser Anda.