Json kullanarak ayrıştırmak istediğim bir json için bir eşleme oluşturmada sorun yaşıyorum. Bu çok özel, onun içindeki nesneleri ile bir json dizi ile bir json dosyası hakkında.json dosyası ile ayrıştırma gson
benim jsonfile böyle başlıyor:
[
{
"venue": {
"venue_seasons": [
{
"created_at": "2011-12-25T23:00:28Z",
"updated_at": "2011-12-28T15:13:53Z",
"start_timestamp": 1293840000,
"id": 337,
"end": "2011-12-24T00:00:00Z",
"enabled": true,
"start": "2011-01-01T00:00:00Z",
"season_openings": [ … ],
"end_timestamp": 1324684800
},
{ … }
],
"address": "someadress",
"city": "cityname",
"name": "name",
"created_at": "2011-03-31T07:55:33Z",
etcetera
}
"venue":{another venue
Yani ilk bir dizi, içindeki nesnelerin bir sürü bir nesne (mekan) den (i çoğu kaldırılmış, çünkü thats benim soru için önemli değildir) ve bazı diziler (season_openings gibi).
Ayrıştırma kodum böyle çalışmaktadır, gson kullanıyorum. Giriş akışı iyi çalışıyor.
public class JsonResponse {
public List<Venues> venue;
}
ve Venues.class:
public class Venues {
public List<VenueSeasons> venue_seasons;
@SerializedName("adress")
public String getAdress;
@SerializedName("city")
public String getCity;
@SerializedName("country")
public String getCountry; etcetera
}
Ama bu kodu çalıştırdığınızda i bir hata alıyorum: Tabii
Unable to start activity ComponentInfo{com.hera.android.JSON/com.hera.android.JSON.TestParser2Activity}: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2
sınıf JsonResponse ile
Reader reader = new InputStreamReader(inputStream);
JsonResponse venueResponse = gson.fromJson(reader, JsonResponse.class);
List<Venues> results = venueResponse.venue;
hatayı okuyabiliyorum: Bjects ama bir dizi olsun. Farklı jsonresponse.class ile çok çeşitli ve json dizisi bir json nesnesine koyarak bile (gerçekten bir çözüm değil çünkü bu tür bir jsonfile ile çalışmam gerekiyor). Ama bunu her an ya da benzer bir hatayı alıyorum.
Sanırım bir çözüme yakınım, kimse neyi yapamayacağımı ve bana yardım eli bulabildiğini görebiliyor mu? Teşekkürler. Böyle GSON çağıran
Geçersiz örnek JSON ve tamamlanmamış geçersiz örnek Java koduyla, yardım etmeye çalışabilecek kişiler gerçekten neler olup bittiğini tahmin etmekten uzak kalır. Çözülmeye çalışılmakta olan sorunu gösteren minimal örneklerin tümünü göndermek iyi bir uygulamadır. –