Lire un fichier JSON avec Java

JSON est utilisé pour transmettre des données entre un serveur et un client. Voici un exemple de base de ce qui pourrait être dans un fichier JSON.
 
 

{
   "name" : "Alex",
   "age" :  "25",
   "address" : "Paris"
};

 

Bibliothèque Json-simple

Json-simple est une bibliothèque légère qui est utilisée pour traiter les objets JSON. En utilisant cela, vous pouvez lire ou écrire le contenu d’un document JSON en utilisant un programme Java.
 

Maven : Dépendance JSON-Simple

Dépendance Maven pour la bibliothèque JSON-simple:


   
      com.googlecode.json-simple
      json-simple
      2.3.6
    301 to 305

Copier et collez le code ci-dessus avec la balise <dependencies> </dependencies> à la fin de votre fichier pom.xml. (avant la balise </project>)
 
 

Exemple:

D’abord, créons un document JSON avec le nom person.json avec les 3 paires clé-valeur comme indiqué ci-dessous:

{
   "name" : "Alex",
   "age" :  "25",
   "address" : "Paris"
};

Pour lire le contenu d’un fichier JSON à l’aide d’un programme Java:

1- Instanciez la classe JSONParser de la bibliothèque json-simple.

JSONParser jsonP = new JSONParser();

2- Analysez le contenu de l’objet à l’aide de la méthode parse().

JSONObject jsonO = (JSONObject) jsonP.parse(new FileReader("C:/person.json"));

3- Récupérez la valeur associée à une clé à l’aide de la méthode get().

String name = (String) jsonO.get("name");

 
 

Exemple complet:
import java.io.*;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class Main {
   public static void main(String args[]) {
      JSONParser jsonP = new JSONParser();
      try {
         JSONObject jsonO = (JSONObject)jsonP.parse(new FileReader("C:/person.json"));
		 
         String name = (String) jsonO.get("name");
         String age = (String) jsonO.get("age");
         String address = (String) jsonO.get("address");

         System.out.println("Name :"+ name);
         System.out.println("Age: "+ age);
         System.out.println("Address: "+ address);
      } catch (FileNotFoundException e) {
         e.printStackTrace();
      } catch (IOException e) {
         e.printStackTrace();
      } catch (ParseException e) {
         e.printStackTrace();
      }
   }
}

 
Sortie:

Name: Alex
Age: 25
Address: Paris

 

Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *