Maison >Java >javaDidacticiel >Comment décoder un tableau JSON en une collection d'objets à l'aide de GSON ?

Comment décoder un tableau JSON en une collection d'objets à l'aide de GSON ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-20 22:38:10168parcourir

How to Decode a JSON Array into a Collection of Objects Using GSON?

Décodage des structures de données imbriquées avec GSON

Les données JSON fournies représentent un tableau d'objets, tandis que le code de décodage anticipe un seul objet de la classe ChannelSearchEnum. Cette incompatibilité entraîne l'exception "BEGIN_OBJECT attendu mais était BEGIN_ARRAY".

Pour résoudre ce problème, l'approche de décodage doit être modifiée pour gérer un tableau d'objets. Une méthode appropriée consiste à utiliser la classe TypeToken en combinaison avec la méthode fromJson.

Type collectionType = new TypeToken<Collection<ChannelSearchEnum>>(){}.getType();
Collection<ChannelSearchEnum> enums = gson.fromJson(json, collectionType);

Ce code crée un jeton de type pour une collection d'objets ChannelSearchEnum, puis l'utilise pour spécifier le type souhaité lors de la désérialisation. En conséquence, GSON analysera correctement le tableau JSON et remplira une collection contenant des instances ChannelSearchEnum individuelles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn