Fungsi alat ini
Alat ini mengubah tabel berbentuk CSV menjadi JSON, dan JSON kembali menjadi tabel, tanpa mengirim data ke mana pun. CSV hanyalah teks dengan satu rekaman per baris dan pemisah di antara nilai; mudah dibuat tetapi ternyata sulit dibaca dengan benar: nilai bisa mengandung pemisah itu sendiri, tanda kutip, bahkan baris baru. Konverter ini mengikuti spesifikasi CSV (RFC 4180) dan toleran terhadap berkas berantakan yang benar-benar dihasilkan spreadsheet dan ekspor.
Mengubah JSON ke CSV
Tempel array objek, array dari array, atau satu objek. Kolomnya adalah semua kunci yang muncul di rekaman mana pun, menurut urutan kemunculan pertama; rekaman yang tidak punya suatu kunci mendapat sel kosong. Data bersarang diratakan dengan satu aturan yang terdokumentasi: kunci di dalam objek menjadi jalur yang digabung dengan titik, jadi {"user": {"name": "An"}} menghasilkan kolom user.name, dan item array diberi nomor: tags menjadi tags.0 dan tags.1. Jika mau, seluruh array dapat dipertahankan sebagai teks JSON dalam satu sel. Sel yang berisi pemisah, tanda kutip, atau baris baru diberi tanda kutip, dengan tanda kutip digandakan, sesuai standar.
Contoh
CSV ini punya nilai bertanda kutip yang berisi koma dan satu sel kosong:
name,age,city
An,34,"Ha Noi, VN"
Binh,,Hue
Dengan pengaturan bawaan, hasilnya adalah daftar dua objek dengan semua nilai berupa teks, jadi usia Binh adalah string kosong. Dengan konversi aktif, usia An menjadi angka 34 dan usia Binh menjadi null. Pada arah sebaliknya, JSON {"id": 1, "user": {"name": "An"}, "tags": ["a", "b"]} menghasilkan kolom id, user.name, tags.0, dan tags.1 dengan nilai 1, An, a, dan b.
Mengapa konversi nonaktif secara bawaan
Spreadsheet diam-diam mengubah teks menjadi angka dan merusak data: kode pos 01234 kehilangan nol, nomor kartu atau pesanan 16 digit berubah menjadi notasi ilmiah, kode produk seperti 1E5 menjadi 100000. Alat ini tidak menebak kecuali Anda memintanya. Bahkan dengan konversi aktif, nilai dengan nol di depan, atau bilangan bulat lebih dari 15 digit, tetap teks karena JavaScript tidak dapat menyimpannya dengan tepat.
Batas
Masukan hingga 5 juta karakter atau 10 MB untuk file. Kotak hasil menampilkan 200.000 karakter pertama dari hasil yang sangat besar; salin dan unduh selalu memuat semuanya. Tanggal tidak dikonversi: tetap teks.