Json Decode Nedir?
Flutter’da JSON decode işlemi, dart:convert kütüphanesinde bulunan jsonDecode() fonksiyonunu kullanarak gerçekleştirilir. Bu fonksiyon, bir JSON dizgisini Dart dilinin nesne veya veri yapılarına dönüştürür.
import ‘dart:convert’;
void main() {
String jsonString = ‘{“name”: “John”, “age”: 30}’;
Map
print(decodedJson[‘name’]); // John
print(decodedJson[‘age’]); // 30
}
Yukarıdaki örnekte, jsonString değişkeni JSON dizgisini temsil eder. jsonDecode() fonksiyonu, bu dizgiyi Map<String, dynamic> veri yapısına dönüştürür. Daha sonra, decodedJson değişkeni üzerinden JSON içeriğine erişebilirsiniz.
Eğer JSON dizgisi bir diziyi temsil ediyorsa, jsonDecode() fonksiyonu bir List döndürür.
import ‘dart:convert’;
void main() {
String jsonArrayString = ‘[1, 2, 3, 4, 5]’;
List
print(decodedArray); // [1, 2, 3, 4, 5]
}
Yukarıdaki örnekte, jsonArrayString değişkeni JSON dizgisini temsil eder. jsonDecode() fonksiyonu, bu dizgiyi List olarak döndürür. Daha sonra, cast<int>() fonksiyonu ile listenin elemanlarını integer türüne dönüştürebilirsiniz.
Flutter’da JSON encode işlemi de aynı dart:convert kütüphanesindeki jsonEncode() fonksiyonu kullanılarak gerçekleştirilir. Bu fonksiyon, Dart nesnelerini JSON dizgilerine dönüştürür.