String to String Array – program się crachuje

String to String Array – program się crachuje
NV
  • Rejestracja:ponad 14 lat
  • Ostatnio:ponad 7 lat
  • Postów:31
0

Cześć,

Temat kiedyś rozwijałem, zostawiłem go później na boku - brakło mi sił, chciałbym teraz wrócić do niego.
Odkopałem stary projekt, zastosowałem jedno z rozwiązań użytkownika tego forum, obecnie wygląda to tak:

Kopiuj
StringReader sr = new StringReader(inputString);
    JsonReader reader = Json.createReader(sr);
    JsonArray a = reader.readArray();
    // W tablicy siedzi nie ciąg znaków, a kolejny obiekt Json,
    // z którego można dalej czytać, jak z mapy.
    final JsonObject obj = a.getJsonObject(0);
    System.out.println("obj: " + obj);
    for(String key: obj.keySet())
      System.out.println("Na " + key + " jest " + obj.getString(key));
    sr.close();

Jako inputString mamy : {"6":"PIZZA","7":"Makarony","9":"FAST FOOD","10":"Napoje","11":"SAŁATKI"}

Mój program na lini: final JsonObject obj = a.getJsonObject(0); po prostu się crashuje wyrzucając następujący błąd: http://wklej.org/id/3344856/

Próbowałem kilka różnych rzeczy - ale nie mam pojęcia dlaczego to się crashuje. Z tego co rozumiem, nie może zrzucić tej tabicy na JsonObject - ale nie mogę znaleźć w tym błędzie dlaczego.
Dzięki za pomoc :)

edytowany 1x, ostatnio: flowCRANE
Haskell
  • Rejestracja:prawie 10 lat
  • Ostatnio:12 miesięcy
  • Postów:4700
0

Po pierwsze naucz się korzystać z debuggera. Każdy programista powinien potrafić się nim posługiwać.

Po drugie naucz się korzystać z Gsona: https://futurestud.io/tutorials/gson-getting-started-with-java-json-serialization-deserialization


Zaglądali do kufrów, zaglądali do waliz, nie zajrzeli do d**y - tam miałem socjalizm. Czesław Miłosz
jarekr000000
  • Rejestracja:ponad 8 lat
  • Ostatnio:14 minut
  • Lokalizacja:U krasnoludów - pod górą
  • Postów:4707
0

A może problem jest dlatego, że ten input to nie jest żaden array ?

Jako inputString mamy : {"6":"PIZZA","7":"Makarony","9":"FAST FOOD","10":"Napoje","11":"SAŁATKI"}


jeden i pół terabajta powinno wystarczyć każdemu
NV
Mhm - jak wrócę z pracy popracuje nad tym i dam znać jakie efekty udało mi się uzyskać.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.