315 votes

Gson : Directement convertir String en JsonObject (aucun POJO)

N’arrive pas à comprendre cela. J’ai essaye de manipulation arbre JSON dans GSON, mais j’ai un cas où je ne connaissent pas ou ont un POJO pour convertir une chaîne en avant conversion JsonObject. Est-il possible de passer directement d’une chaîne à JsonObject ?

J’ai essayé ce qui suit (Scala syntaxe) :

mais « a » échoue (le JSON est échappé et analysé comme un JsonString seulement) « b » retourne un JsonObject vide.

Toutes les idées ?

Merci

545voto

Dallan Quass Points 1364

utiliser JsonParser ; par exemple :

147voto

maverick Points 919

Essayez d’utiliser getAsJsonObject() au lieu d’un casting tout droit utilisé dans la réponse acceptée :

60voto

Uttam Points 910
String jsonStr = "{\"a\": \"A\"}";

Gson gson = new Gson();
JsonElement element = gson.fromJson (jsonStr, JsonElement.class);
JsonObject jsonObj = element.getAsJsonObject();

38voto

Jozef Benikovský Points 251

La façon la plus simple consiste à utiliser la classe qui dérive de , comme indiqué ci-dessous :

11voto

Dan Menes Points 2217

Juste rencontré le même problème. Vous pouvez écrire un désérialiseur personnalisé trivial pour la `` classe :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X