4D v16.3JSON Parse |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
JSON Parse
|
JSON Parse ( chaîneJSON {; type} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
chaîneJSON | Chaîne |
![]() |
Chaîne en JSON à analyser | |||||
type | Entier long |
![]() |
Type dans lequel convertir les valeurs | |||||
Résultat | Booléen, Objet, Pointeur, Réel, Texte |
![]() |
Valeurs extraites de la chaîne JSON | |||||
La commande JSON Parse analyse (parse) le contenu d’une chaîne formatée en JSON et en extrait des valeurs que vous pouvez stocker dans un champ ou une variable 4D. Cette commande désérialise des données JSON ; elle effectue l’action inverse de la commande JSON Stringify.
Passez dans chaîneJSON la chaîne au format JSON dont vous souhaitez analyser le contenu. Cette chaîne doit être correctement formatée, sinon une erreur de parsing est générée. JSON Parse peut donc être utilisée pour valider du JSON.
Note : Si vous utilisez des pointeurs, vous devez appeler la commande JSON Stringify avant JSON Parse.
Par défaut, si vous omettez le paramètre type, 4D tentera de convertir la valeur obtenue dans le type de la variable ou du champ utilisé pour stocker le résultat (s’il est défini). Sinon, 4D tentera de déduire le type. Vous pouvez également forcer l’interprétation du type en passant le paramètre type : passez une des constantes suivantes du thème Types champs et variables :
Constante | Type | Valeur |
Is Boolean | Entier long | 6 |
Is date | Entier long | 4 |
Is longint | Entier long | 9 |
Is object | Entier long | 38 |
Is real | Entier long | 1 |
Is text | Entier long | 2 |
Notes :
Exemples de conversions simples :
C_REAL($r)
$r:=JSON Parse("42.17") //$r = 42,17 (réel)
C_LONGINT($el)
$el:=JSON Parse("120.13";Is longint) //$el=120
C_TEXT($t)
$t:=JSON Parse("\"Année 42\"";Is text) //$t="Année 42" (texte)
C_OBJECT($o)
$o:=JSON Parse("{\"name\":\"jean\"}")
// $o = {"name":"jean"} (objet 4D)
C_BOOLEAN($b)
$b:=JSON Parse("{\"manager\":true}";Is Boolean) //$b=vrai
Exemples de conversions de données de type date :
$test:=JSON Parse("\"1990-12-25T12:00:00Z\"")
// $test=1990-12-25T12:00:00Z
C_DATE($date)
$date:=JSON Parse("\"2008-01-01T12:00:00Z\"";Is date)
//$date=01/01/08
Cet exemple montre l’utilisation conjointe des commandes JSON Stringify et JSON Parse :
C_TEXT($JSONContact)
C_OBJECT($Contact;$Contact2)
$Contact:=New object("name";"Monroe";"firstname";"Alan")
// JSON Stringify : conversion d’un objet JSON en chaîne JSON
$JSONContact:=JSON Stringify($Contact)
// JSON Parse : conversion d’une chaîne JSON en nouvel objet
$Contact2:=JSON Parse($JSONContact)
Produit : 4D
Thème : JSON
Numéro :
1218
Créé : 4D v14
JSON validator
4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)