📊 CSV ↔ JSON Converter
Convert CSV to JSON and JSON to CSV instantly. Supports headers, custom delimiters, and nested JSON flattening. Free online CSV ↔ JSON converter — no signup needed.
How to Use
Choose direction
Select CSV → JSON to convert a spreadsheet to data, or JSON → CSV to export JSON as a table.
Paste your data
Paste CSV (with header row) or valid JSON array into the input area. The table preview updates live.
Copy or download
Click Copy or Download to save the output. Use the table preview to verify your data looks correct.
Frequently Asked Questions
Tam Rehber: CSV'den JSON'a Dönüştürücü
CSV ve JSON, en yaygın iki veri değişim formatıdır. CSV elektronik tabloların ortak dilidir — Excel, Google Sheets ve neredeyse her veritabanı aracı tarafından dışa aktarılır. JSON, web API'leri ve JavaScript uygulamaları için yerel formattır.
RFC 4180 CSV Spesifikasyonu
CSV'nin basitliğine rağmen, RFC 4180 tarafından tanımlanan beklenmedik durumlar vardır:
- Virgül, çift tırnak veya satır sonu içeren alanlar çift tırnak içine alınmalıdır.
- Çift tırnaklar ikiye katlanarak kaçırılır:
""tek bir"temsil eder. - İlk kayıt isteğe bağlı olarak sütunları adlandıran bir başlık satırı olabilir.
BOM Karakteri ve Excel UTF-8 Sorunları
Microsoft Excel, "CSV UTF-8" olarak dışa aktarılan dosyaların başına bir UTF-8 BOM (\uFEFF) ekler. Bu, BOM'u soymayanparserlarda ilk sütun başlığının ad yerine ad olarak görünmesine neden olur. Excel kaynaklı CSV dosyalarını işlemeden önce BOM'u her zaman kontrol edin ve kaldırın.
Çıktı Formatları
- Nesne dizisi — REST API'leri, veritabanları ve ORM girişi için en iyisi.
- Sütun dizileri — Grafik kütüphaneleri (Chart.js, D3.js) ve analitik için en iyisi.
/* Sütun dizileri formatı */
{
"ad": ["Ahmet", "Mehmet"],
"yas": ["30", "25"],
"sehir": ["İstanbul", "Ankara"]
}
Büyük Dosyaları Akış Olarak İşleme
Birkaç yüz megabaytı aşan dosyalar için tarayıcı tabanlı dönüştürme pratik değildir. Node.js'de akış yaklaşımı kullanın:
const { parse } = require('csv-parse');
const fs = require('fs');
fs.createReadStream('buyuk.csv')
.pipe(parse({ columns: true, bom: true }))
.on('data', (row) => console.log(JSON.stringify(row)));
- JSON çıktınızı JSON Biçimlendirici ile doğrulayın.
- İki JSON çıktısını JSON Diff ile karşılaştırın.