Ubah CSV ke JSON
Ubah hasil ekspor spreadsheet menjadi JSON, NDJSON, atau array biasa. Pemisah dan encoding karakter ditentukan otomatis.
Letakkan file di sini
.csv, .tsv, .txt · hingga 300 MB
Pengaturan lainnyaSembunyikan pengaturan
Cara Ubah ke JSON
- 1
Letakkan file CSV
Seret file .csv, .tsv, atau .txt ke halaman ini, atau tambahkan beberapa file sekaligus. Isi file dibaca dan diurai di dalam tab browser ini.
- 2
Sesuaikan pemisah atau encoding bila perlu
Keduanya dideteksi otomatis. Jika hasilnya tampak salah, pilih sendiri pemisah atau encoding, lalu ubah lagi.
- 3
Ubah dan unduh JSON
Pilih objek, array, atau NDJSON, tekan tombol, lalu simpan hasilnya.
Titik koma, tab, dan pemisah lainnya
CSV yang diekspor dari Excel versi Eropa biasanya dipisahkan titik koma, sedangkan tabel yang diambil langsung dari database sering dipisahkan tab. Lima calon pemisah dicoba (koma, titik koma, tab, garis tegak, dan titik dua), dan yang dipilih adalah pemisah yang memberi jumlah kolom yang konsisten di baris sampel. Jika tidak ada yang cocok, alat ini mengatakannya, bukan menebak dengan salah tanpa memberi tahu.
Mengapa kode barang tetap berupa string
Deteksi tipe pintar mengubah 42 menjadi angka dan true menjadi boolean, lalu sengaja berhenti di dua kasus. Nilai dengan nol di depan seperti 00123 tetap mempertahankan nolnya dan tetap berupa teks. Begitu pula bilangan bulat yang lebih panjang dari lima belas digit, karena nomor identitas pajak dua puluh digit kehilangan digit terakhirnya tanpa peringatan begitu menjadi angka JavaScript.
Objek, array, atau NDJSON
Mode objek menghasilkan satu objek JSON per baris dengan kunci dari baris header; bentuk inilah yang diharapkan sebagian besar API. Mode array membuang kunci dan mengembalikan baris mentah. NDJSON menulis satu objek ringkas per baris tanpa kurung pembungkus, bentuk yang dipakai BigQuery dan Elasticsearch untuk memuat data secara massal.
File tidak pernah keluar dari perangkat Anda
Membaca isi file, mengenali encoding, memecah kolom, dan menyusun JSON semuanya berlangsung di tab browser ini. Tidak ada langkah unggah, tidak ada antrean, tidak ada akun, dan tidak ada salinan di server yang perlu dihapus sesudahnya. Tutup tab, dan data hilang dari memori, jadi ekspor rahasia tidak pernah melewati batas jaringan yang tidak Anda pilih.
Pertanyaan yang sering diajukan
Apa bedanya JSON dan NDJSON?
JSON biasa membungkus semua record dalam satu array, jadi parser harus membaca seluruh dokumen sebelum bisa memakai isinya. NDJSON menaruh satu objek lengkap di setiap baris tanpa kurung atau koma di antaranya, sehingga pemuat data bisa membaca record satu per satu secara streaming. BigQuery, Elasticsearch, dan sebagian besar pipeline log mengharapkan bentuk kedua itu.
Mengapa angka saya menjadi string?
Ada dua aturan yang sengaja mempertahankan nilai sebagai teks: nol di depan dan lebih dari lima belas digit. Keduanya ada karena konversi akan mengubah data: 00123 adalah kode barang, bukan seratus dua puluh tiga, dan pengenal yang panjang akan dibulatkan begitu menjadi angka floating point. Nilai numerik lainnya dikonversi seperti biasa.
Bagaimana cara mempertahankan nol di depan pada kode pos dan SKU?
Anda tidak perlu melakukan apa pun: secara bawaan, nilai dengan nol di depan dibiarkan sebagai string. Jika Anda ingin setiap nilai disimpan persis seperti aslinya, termasuk angka biasa serta true atau false, ubah tipe nilai dari pintar ke teks, dan tidak ada yang dikonversi sama sekali.
File saya memakai titik koma, bukan koma. Apakah tetap bisa?
Bisa. Titik koma adalah salah satu dari lima pemisah yang diuji otomatis, bersama tab, garis tegak, dan titik dua, jadi ekspor dari Excel versi Eropa biasanya tidak perlu diatur apa pun. Jika deteksi gagal, pilihan pemisah memungkinkan Anda menentukan pemisah sendiri, termasuk satu karakter khusus.
Mengapa teks Sirilik di file saya rusak?
Hampir pasti file itu disimpan sebagai Windows-1251, encoding yang umum dihasilkan aplikasi akuntansi Rusia. Deteksi memeriksa byte order mark lebih dulu, lalu memvalidasi byte secara ketat sebagai UTF-8, dan jika gagal beralih ke Windows-1251 atau Windows-1252 berdasarkan sebaran byte bernilai tinggi. Jika teks masih tampak salah, atur encoding secara manual.
Bagaimana jika dua kolom punya header yang sama?
Objek JSON tidak bisa memuat dua kunci yang identik. Jadi jika baris header mengulang sebuah nama, kemunculan kedua menjadi id_2 dan ketiga menjadi id_3. Gaya kunci diterapkan setelah penggantian nama itu, sehingga dua header berbeda yang baru sama setelah diberi gaya, misalnya User ID dan user_id dengan snake_case, berakhir menjadi satu kunci, dan kolom yang lebih ke kanan menimpa kolom sebelumnya. Untuk file seperti itu, biarkan gaya kunci tetap memakai nama kolom apa adanya.
Bagaimana jika beberapa baris punya kolom lebih banyak daripada header?
Nilai tambahan itu tidak dibuang. Nilai tersebut masuk ke array __extra pada record itu, jadi Anda bisa mencari __extra di JSON, melihat baris yang bermasalah, dan memutuskan apakah file sumber perlu diperbaiki.
Apakah file saya diunggah ke server?
Tidak. Pengurai ini adalah JavaScript biasa yang berjalan di tab browser, tanpa permintaan unggah di belakangnya. Tidak ada yang disimpan, dicatat, atau dikirim ke mana pun, dan setelah halaman menjalankan satu konversi, halaman tetap berfungsi meski jaringan terputus.
Panduan
- CSV ke Excel dan sebaliknya tanpa merusak dataFile CSV yang masuk ke Excel lalu keluar lagi bisa berakhir sedikit berbeda dari file awalnya, dengan cara yang mudah terlewat.
- Membersihkan CSV dari masalah Windows-1251 dan BOM sebelum diimporCSV hasil ekspor yang terlihat normal saat dibuka di spreadsheet tetap bisa merusak impor JSON karena karakter yang tidak terlihat atau encoding yang salah.