CodeBlanks Logo Icon CodeBlanks

jsonDecode

jsonDecode ile JSON dizesini Map'e çevirmeyi öğrenirsin.

jsonDecode ile JSON'u çözmek

JSON, sunucudan gelen verinin en yaygın biçimidir. Dart'ta bir JSON dizesini jsonDecode ile bir Map'e çevirirsin. Bu fonksiyon dart:convert kütüphanesindedir.

import 'dart:convert';

const veri = '{"ad": "Ayşe", "yas": 28}';
final map = jsonDecode(veri);
print(map['ad']);  // Ayşe

Dönen nesne aslında Map<String, dynamic> türündedir; değerlerin türü çalışma anında belli olur.

dart:convert içe aktarma

jsonDecode kullanmak için dosyanın başına import 'dart:convert'; yazılır. Bu kütüphane Dart'ın standart parçasıdır, ek paket gerekmez.

import 'dart:convert';

void main() {
  final s = '{"sehir": "İstanbul"}';
  final m = jsonDecode(s) as Map<String, dynamic>;
  print(m['sehir']);  // İstanbul
}

as ile türü açıkça belirtmek derleyiciye ve okuyucuya yardımcı olur.

Uygulama JSON'dan ad yazdır

jsonDecode ile s dizesini çöz ve 'ad' anahtarındaki değeri print ile yazdır.

Başlangıç kodu

main.dart
import 'dart:convert';

void main() {
  const s = '{"ad": "Deniz"}';
  // JSON dizesini çöz ve 'ad' değerini yazdır
}

Örnek çözüm

main.dart
import 'dart:convert';

void main() {
  const s = '{"ad": "Deniz"}';
  final m = jsonDecode(s);
  print(m['ad']);
}

Beklenen çıktı

Deniz

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 jsonDecode('{"ad":"Ayşe"}') çağrısı ne döndürür?

  • Bir Future
  • Bir Widget
  • Map<String, dynamic> türünde bir nesne Doğru cevap
  • Her zaman String

Açıklama: jsonDecode bir JSON nesnesini Map'e, bir JSON dizisini List'e çevirir. Nesne olduğu için dönen tür Map<String, dynamic>'dir.

2 JSON dizesini çöz

Soru
import 'dart:convert';

void main() {
  const s = '{"ad": "Ece"}';
  final m = ____(s);
  print(m['ad']);
}
Cevap
import 'dart:convert';

void main() {
  const s = '{"ad": "Ece"}';
  final m = jsonDecode(s);
  print(m['ad']);
}

Açıklama: jsonDecode, dart:convert içindeki JSON çözme fonksiyonudur; dizeyi Map'e çevirir.

3 dart:convert parçaları

Kavram Anlamı
jsonDecode JSON dizesini nesneye çevirir
dart:convert İçe aktarılması gereken kütüphane
Map<String, dynamic> JSON nesnesinin Dart karşılığı
m['ad'] Map içindeki 'ad' değerine erişim

Orta seviye bölümündeki tüm dersler