Veri · 6 Ağustos 2026

CSV mi JSON mu? Tablo, iç içe veri ve API’ler

İkisi de “veri dosyası”dır; ikisi aynı işi yapmaz. CSV satır-sütun dünyasına, JSON ağaç ve nesne dünyasına aittir. Yanlış seçim ya düzleştirilmiş kayıp yapı ya da Excel’de açılamayan bir yığın üretir.

CSV: düz tablo

CSV (veya TR’de sık görülen noktalı virgüllü metin) her satırda aynı sütunları tekrarlar. İnsanlar Excel’de açar, muhasebe sistemleri içe aktarır, veri bilimciler pandas ile okur. Güçlü yanları: basitlik, yaygınlık, düşük araç eşiği.

Zayıf yanları: tip bilgisi yoktur (her şey metin gibi durur), bir hücrede güvenli liste/nesne yoktur, ayraç ve kodlama kargaşası vardır, yorum veya şema dosyanın kendi içinde standart değildir.

JSON: yapı ve tipler

JSON nesne, dizi, sayı, boolean, null taşır. Bir siparişin altında kalem listesi, her kalemde ürün kodu ve adet — bu doğal JSON’dur. Web API’lerin çoğu JSON konuşur; yapılandırma dosyaları ve NoSQL dışa aktarımları da.

Zayıf yanları: büyük düz tablolarda satır başına tekrarlayan anahtar adları dosyayı şişirebilir; muhasebecinin çift tıklayıp düzenlemesi zordur; bozuk bir virgül tüm dosyayı geçersiz kılar.

İç içe yapı sorunu

Diyelim JSON’da müşteri ve siparişler iç içe:

{ "musteri": "Ayşe", "siparisler": [ {"urun": "A", "adet": 2}, {"urun": "B", "adet": 1} ] }

Bunu tek satırlık CSV’ye çevirirseniz seçenekleriniz kötüdür: siparişleri tek hücrede metin yapmak, satır çoğaltmak (Ayşe iki kez) veya sütunları siparis1_urun, siparis2_urun diye yaymak. Her seçimde ya anlam ya da düzen kaybolur. Kural: veri gerçekten hiyerarşikse JSON’da tutun; tabloya indirgemeyi bilinçli bir tasarım adımı yapın, “otomatik dönüştürücü her şeyi çözer” demeyin.

Başlık satırları ve anahtarlar

  • CSV’de genelde ilk satır sütun adıdır. Boş başlık, yinelenen başlık veya birleşik Excel başlığı dönüşümü bozar.
  • JSON dizi-of-objects ([{...},{...}]) CSV’ye en yakın eşlemedir: her nesnenin anahtarları sütun olur.
  • Tek bir kök nesne ({"meta":..., "rows":[...]}) doğrudan tablo değildir; hangi dizinin “satırlar” olduğunu seçmeniz gerekir.

API’ler vs elektronik tablolar

API / uygulama entegrasyonu: JSON. Tipler, null, iç içe kaynaklar, HTTP gövdesi — ekosistem buna göre kuruludur.

İnsan düzenlemesi, muhasebe, toplu e-posta listesi: CSV veya XLSX. İnsan ızgarada düşünür; JSON editörü herkesin işi değildir.

Köprü sık gerekir: API’den JSON alıp raporu Excel’de bitirmek veya Excel’den CSV üretip JSON API’ye basmak. Köprüde kayıp bekleyin; sürpriz olmasın.

Dönüşüm tuzakları

  • Sayı / metin. CSV’de 00123 çoğu parser’da 123 olur. JSON’da string olarak "00123" tutun.
  • Boolean ve null. CSV’de true/ belirsizdir; JSON’da nettir.
  • Ayraç ve tırnak. CSV alanında virgül/noktalı virgül varsa alan tırnaklanmalıdır. Dönüştürücü bunu bozarsa satır kayar.
  • Tek nesne vs dizi. Bazı araçlar tek satırlık tabloyu nesne, çok satırı dizi üretir — hedef API hangisini bekliyor bakın.
  • Türkçe karakter / BOM. CSV tarafında UTF-8 tutarlılığı şart; JSON zaten UTF-8 varsayar ama dosya ANSI kaydedilmişse bozulur.

Hızlı karar

  • Her satır aynı sütunlar, Excel’de açılacak → CSV (veya XLSX).
  • Sipariş kalemi, adres bloğu, etiket dizisi gibi iç yapı var → JSON.
  • Hem insan hem API → kaynağı JSON tutup rapor için ayrı CSV üretin; tek dosyada her şeyi çözmeye çalışmayın.

Dönüştürücü bir köprüdür, şema tasarımcısı değildir. Önce verinin şekline karar verin; sonra formatı seçin.

CSV ↔ JSON dönüşümünü tarayıcıda deneyin; dosya içeriğini sunucuya yüklemeniz gerekmez.

CSV ↔ JSON aracını aç
← Tüm yazılar