Merhaba,
Json dosyasında bir sınıfa mensup iç içe array yerine ayrı sınıflardan oluşan iki veya daha fazla farklı array’i nasıl listeye çevireceğiz.
Json dosyasındaki birden fazla array'i okumak
- Edited
[
[
{
"ogrenci_adi" : "Hakan",
"no" : 5
},
{
"ogrenci_adi" : "Ali",
"no" : 10
}
],
[
{
"ogretmen_adi" : "Emre",
"okul" : "A Okulu"
},
]
]
Basit bir örnek üstünde fazla uzatmadan hem öğrenci hemde öğretmen array’i için ogrenci ve ogretmen sınıflarını oluşturdum ve fromJson metodlarını tanımlandım.
Ne yapmam gerekiyor bilmiyorum.
Emre Altunbileğin 121. videosunun 16:30 dk’sından itibaren sınıf yardımı ile decode işlemini yapmak için kod satırı oluşturuyor. Fakat o satır tek sınıf için geçerli. Json dosyasından birden fazla iç içe olmayan farklı array varsa bunları programda nasıl ayrı listeler halinde kullanabiliriz?
asli hocam kafa karıstırmana gerek yok
senin örneğinde öncelikle bir liste geliyor değil mi
List anaListe = json.decode(gelenJson.tostring);
List ogrenciListesi = anaListe[0]; //Analistenin ilk elemanı bize öğrenciListesini verir
List ogretmenListesi = anaListe[1]; //Analistenin ikinci elemanı bize ogrentmenListesini verir
anaListe[0][0][‘ogrenci_adi’] bize hakan değerini verir. daha okunur olması için ogrenciListesi[0][‘ogrenci_adi’] da bize hakanı verir…
iç içe for döngüsüyle tüm yapıyı okuyaiblirsn
asli okursun hocam, iki tane for kullanırsın,, videoda tek forda yaptıgımızı iki forla yaparsın
List anaListe = json.decode(gelenJson.tostring);
Senin yapında List ogrenciListesi = anaListe[0]; şu ifade videodaki List arabaListesi = json.decode(gelenJson.tostring) ile aynı
sonra bunu forla gezerek ogrenci nesnelerini atarsın
bu işlemden sonra da baska bir for döngüsü ile List ogretmenListesi = anaListe[1]; bu listeyi gezer Ogretmen modeline atarsn
ishak List<Araba> ArabaListesi = (json.decode(gelenJson) as List)
Hocam üstteki kod satırı için videoda karışık gelen belki burası olmuştur diyorsunuz ya, harbiden bu satırı sanki başka bir kalıpmış gibi görüp, anlamamıştım. Son gönderdiğiniz cevap ile yapı kafamda oturdu. Bu Map/Liste mantığını iyi anlamak gerekiyor gerçekten.
.map((mapYapisi) => Araba.fromJson(mapYapisi))
.toList();
Tekrar teşekkürler.
arkadaşın dediği doğru orada araba ve araba modeli diye 2 sınıf var fakat araba modeline erişemiyoruz. bu nasıl olacak