Fitur Lanjutan
Jelajahi kemampuan lanjutan dari konverter JSON ke CSV untuk skenario transformasi data yang kompleks.
Penanganan Data Kompleks
Perataan Objek Bersarang
Alat ini secara otomatis meratakan struktur JSON bersarang menggunakan notasi titik:
Input:
[
{
"user": {
"personal": {
"name": "John Doe",
"age": 30
},
"contact": {
"email": "john@example.com",
"phone": "123-456-7890"
}
},
"orders": [
{ "id": 1, "amount": 99.99 },
{ "id": 2, "amount": 149.99 }
]
}
]
Output (diratakan):
user.personal.name,user.personal.age,user.contact.email,user.contact.phone,orders
John Doe,30,john@example.com,123-456-7890,"[{""id"":1,""amount"":99.99},{""id"":2,""amount"":149.99}]"
Penanganan Array
Array di dalam objek dikonversi menjadi string JSON untuk mempertahankan strukturnya:
Input:
[
{
"name": "Product A",
"tags": ["electronics", "gadget", "portable"],
"specifications": {
"weight": "500g",
"dimensions": [10, 20, 30]
}
}
]
Output:
name,tags,specifications.weight,specifications.dimensions
Product A,"[""electronics"",""gadget"",""portable""]",500g,"[10,20,30]"
Konfigurasi Lanjutan
Pemisah Kustom
Selain opsi standar, Anda dapat menggunakan karakter apa pun sebagai pemisah:
- Koma (,) - CSV standar
- Titik koma (;) - Format Eropa
- Tab - Format TSV
- Pipe (|) - Pemisah kustom
- Karakter kustom - Karakter tunggal apa pun
Pertimbangan Encoding
UTF-8: terbaik untuk data internasional dengan karakter khusus
name,description
Café,Espresso with café au lait
北京,Capital of China
UTF-16: untuk sistem yang membutuhkan Unicode 16-bit
GBK: khusus untuk pemrosesan teks bahasa Tionghoa
Strategi Escape Tanda Kutip
Escape Standar (direkomendasikan):
name,description
"Smith, John","He said ""Hello World"" to everyone"
Tanpa Escape (gunakan dengan hati-hati):
name,description
Smith John,He said Hello World to everyone
Penanganan Tipe Data
Deteksi Tipe Otomatis
Konverter mempertahankan tipe data pada output:
Input:
[
{ "id": 1, "name": "Product A", "price": 99.99, "active": true, "tags": null },
{ "id": 2, "name": "Product B", "price": 149.99, "active": false, "tags": "electronics" }
]
Output:
id,name,price,active,tags
1,Product A,99.99,true,
2,Product B,149.99,false,electronics
Penanganan Nilai Khusus
- nilai null: dikonversi menjadi string kosong
- nilai undefined: dikonversi menjadi string kosong
- nilai boolean: dipertahankan sebagai true/false
- angka: dipertahankan sebagai nilai numerik
- string: dipertahankan dengan escape yang sesuai
Optimasi Performa
Penanganan Dataset Besar
Untuk file JSON besar:
- Pemrosesan Batch: proses data dalam beberapa bagian
- Manajemen Memori: pantau penggunaan memori browser
- Pemuatan Progresif: muat data secara bertahap
Kompatibilitas Browser
Alat ini bekerja di semua browser modern:
- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+
Contoh Integrasi
Pemrosesan Respons API
Konversi respons API ke CSV untuk analisis:
// Fetch data from API
fetch("/api/users")
.then((response) => response.json())
.then((data) => {
// Use the converter tool to transform to CSV
const csvData = convertToCSV(data);
downloadCSV(csvData, "users.csv");
});
Ekspor Database
Transformasikan hasil query database:
-- SQL query result as JSON
SELECT json_agg(row_to_json(t)) FROM (
SELECT name, email, created_at FROM users
) t;
Integrasi Spreadsheet
Impor CSV ke Excel/Google Sheets:
- Konversi JSON ke CSV menggunakan alat
- Salin data CSV
- Tempelkan ke aplikasi spreadsheet
- Gunakan “Text to Columns” jika diperlukan
Penanganan Kesalahan
Kesalahan Validasi
JSON Tidak Valid:
- kurung siku atau kurung kurawal hilang
- koma di akhir
- tanda kutip tidak di-escape
- urutan escape tidak valid
Masalah Struktur Data:
- array kosong
- struktur objek tidak konsisten
- referensi melingkar (ditangani dengan baik)
Strategi Pemulihan
- Pemeriksaan JSON: gunakan validator JSON online
- Pengujian Bertahap: uji dengan sampel data kecil
- Cadangkan Data: simpan file JSON asli
- Kontrol Versi: lacak perubahan struktur data
Praktik Terbaik
Persiapan Data
- Validasi JSON: pastikan input valid sebelum konversi
- Struktur Konsisten: gunakan struktur objek yang seragam
- Tangani Null: tentukan cara merepresentasikan data yang hilang
- Uji Sampel: verifikasi output dengan dataset kecil
Optimasi Output
- Pilih Pemisah yang Tepat: sesuaikan dengan kebutuhan sistem target
- Pilih Encoding: gunakan encoding karakter yang sesuai
- Manajemen Header: sertakan header untuk kejelasan
- Penanganan Kutip: aktifkan escape untuk data kompleks
Integrasi Workflow
- Otomatisasi: gunakan otomatisasi browser untuk batch
- Penjadwalan: siapkan ekspor data berkala
- Pemantauan: lacak tingkat keberhasilan konversi
- Dokumentasi: pelihara spesifikasi konversi