Exemples de syntaxe JSON4J JavaTM

L'objet principal JSONObject est une extension de HashMap. Cet objet possède deux fonctionnalités pour traiter JSON. La première est une fonction statique qui analyse syntaxiquement une chaîne JSON et renvoie l'instance JSONObject représentant cette chaîne spécifique.La deuxième fonction consiste à générer une nouvelle chaîne complète JSON en attribuant une nouvelle instance JSONObject, et en utilisant ensuite les méthodes get, put et remove pour manipuler les attributs. La fonction PUT de JSONObject effectue une vérification de types pour permettre aux objets placés dans l'instance JSONObject de trouver les représentations JSON adéquates.Voici des types actuels pouvant être intégrés ou récupérés dans la méthode get à partir de la mappe :

    java.lang.String
    java.lang.Boolean
    java.lang.Number
    com.ibm.json.java.JSONArray
    com.ibm.json.java.JSONObject
    null

Vous pouvez alors sérialiser n'importe quelle instance JSONObject générée, en une chaîne JSON, à l'aide d'une des différentes méthodes de sérialisation fournies. Ces méthodes vous permettent de définir un flux de sortie ou un programme d'écriture de sortie (ou encore de renvoyer une chaîne JavaTM relative au texte JSON) et d'indiquer la nécessité d'utilisation d'un format de type prolixe (formaté et mis en retrait pour une meilleure lisibilité) ou d'un format compact (ligne simple, transmission efficace). Examinez l'exemple de syntaxe suivant :

Exemples d'utilisation :
Demo 1 :
public void demoJson()
{
   String JSON = "{\"attribute\":\"foo\", \"number\":100.959}";
      try
      {
         JSONObject obj = (JSONObject)JSON.parse(JSON);
         Double dbl = (Double)obj.get("number");
         if (dbl == null || dbl.doubleValue() != 100.959)
         {
            throw new Exception("Numeric value was incorrect");
         }

         String str = (String)obj.get("attribute");
         if (dbl == null || !str.equals("foo"))
         {
            throw new Exception("String attribute was incorrect");
         }
         String jsonStr = obj.serialize(true);
         System.out.println(jsonStr);
      }
      catch (Exception ex)
      {
         ex.printStackTrace();
      }
}

     Voici le résultat obtenu de l'exemple précédent :
   {
     "attribute": "foo",
     "number": 100.959
   }


Demo 2 :
public void demoJson()
{
   String JSON = "{\"attribute\":\"foo\", \"number\":100.959}";
      try
      {
         JSONObject obj = JSONObject.parse(JSON);
         Double dbl = (Double)obj.get("number");
         if (dbl == null || dbl.doubleValue() != 100.959)
         {
            throw new Exception("Numeric value was incorrect");
         }

         String str = (String)obj.get("attribute");
         if (dbl == null || !str.equals("foo"))
         {
            throw new Exception("String attribute was incorrect");
         }
         String jsonStr = obj.serialize(true);
         System.out.println(jsonStr);
      }
      catch (Exception ex)
      {
         ex.printStackTrace();
      }
}

     Voici le résultat obtenu de l'exemple précédent :
   {
     "attribute": "foo",
     "number": 100.959
   }


Démo 3 :
public void demoJson2()
{
   try
   {
      JSONObject obj = new JSONObject();
      obj.put("attribute", "foo");
      obj.put("number", new Double(100.959));
      String jsonStr = obj.serialize(true);
      System.out.println(jsonStr);
   }
   catch (Exception ex)
   {
      ex.printStackTrace();
   }
}

     Voici le résultat obtenu de l'exemple précédent :
   {
     "attribute": "foo",
     "number": 100.959
   }

Reportez-vous à la documentation API spécifique pour plus de détails.


Conditions d'utilisation | Commentaires