Arama butonu
Bu konudaki kullanıcılar: 1 misafir
0
Cevap
1309
Tıklama
0
Öne Çıkarma
javada json verileri kullanmak
Ö
12 yıl (929 mesaj)
Yüzbaşı
Konu Sahibi

Merhaba arkadaşlar,

Genelde C# ile geliştirme yaparım ama biraz java kurcalamak istedim bende ilk aklıma gelen örneği yapmaya çalıştım kısmen yaptım da diyebiliriz ama bir yerde kaldım Json dosyasında tek bi' veri olunca sıkıntı yokda birden çok veri olunca hata alıyorum. Şöyle gösteriyim ben:

Json dosyam:
 
{
"ID": 1,
"FirstName": "x",
"LastName": "x",
"Company": "x",
"EMail": "x",
"PhoneNo": "x"
}


bu dosyayı okumak için bi' fonksiyon yazdım geriye String döndürüyor yani bu json verisini döndürüyor daha sonrada bir kütüphane yardımıyla bunu class'a dönüştürüyorum(deserializetion işlemi):

String json = getJSON().substring(getJSON().indexOf("[")+1,getJSON().indexOf("]")); 
Users user = new Gson().fromJson(json, Users.class);
WriteLine("["+user.getID()+"]"+" "+user.getFirstName()+" "+user.getLastName()+" "+user.getCompany()+" "+user.getEMail()+" "+user.getPhoneNo());


Sorun şurda ben json dosyasına bir veri daha eklediğimde yani dosya şöyle olunca:
 
{
"ID": 1,
"FirstName": "x",
"LastName": "x",
"Company": "x",
"EMail": "x",
"PhoneNo": "x"
},{
"ID": 2,
"FirstName": "y",
"LastName": "y",
"Company": "y",
"EMail": "y",
"PhoneNo": "y"
}


Şu hatayı alıyorum: Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 136

Sorun nerdedir değerli üstadlarım yardımcı olabilirseniz çok makbule geçer.

EDİT: Sorun çözülmüştür arkadaşlar aynı sorunu yaşayan arkadaşlar varsa çözüm şu şekilde:
Users[] usersList = new Gson().fromJson(json, Users[].class); 
for (Users user : usersList) {
WriteLine("["+user.getID()+"]"+" "+user.getFirstName()+" "+user.getLastName()+" "+user.getCompany()+" "+user.getEMail()+" "+user.getPhoneNo());
}





< Bu mesaj bu kişi tarafından değiştirildi özgür beyin -- 26 Haziran 2013; 11:29:51 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.