Maison >Java >javaDidacticiel >Comment extraire une valeur spécifique d'une chaîne JSON à l'aide de Gson en Java ?

Comment extraire une valeur spécifique d'une chaîne JSON à l'aide de Gson en Java ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-22 15:30:12372parcourir

How to Extract a Specific Value from a JSON String Using Gson in Java?

Analyse JSON avec Gson pour Java

Objectif :
Analyser les données JSON stockées sous forme de chaîne à l'aide de l'outil Bibliothèque Google Gson et extraire une valeur spécifique ("Hello world") du JSON objet.

Problème :

Étant donné les données JSON suivantes :

{
 "data": {
  "translations": [
   {
    "translatedText": "Hello world"
   }
  ]
 }
}

et une classe Java avec une méthode d'analyse :

public class JsonParsing {

   public void parse(String jsonLine) {

      // Extract the string "Hello world" from the JSON

   }

}

Solution :

Pour analyser le JSON, vous pouvez utiliser le JsonParser de Gson pour obtenir un JsonElement, que vous pouvez ensuite convertir en JsonObject. Voici le code :

public String parse(String jsonLine) {
    JsonElement jelement = new JsonParser().parse(jsonLine);
    JsonObject jobject = jelement.getAsJsonObject();
    jobject = jobject.getAsJsonObject("data");
    JsonArray jarray = jobject.getAsJsonArray("translations");
    jobject = jarray.get(0).getAsJsonObject();
    String result = jobject.get("translatedText").getAsString();
    return result;
}

Ce code parcourt la hiérarchie des objets JSON à l'aide des méthodes getAsJsonObject et getAsJsonArray et récupère finalement la valeur de chaîne souhaitée, "Hello world", qui est stockée dans la propriété "translatedText".

En tirant parti de la puissante structure de données fournie par Gson, vous pouvez facilement analyser et accéder à des éléments de données spécifiques à partir de JSON complexes réponses.

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