4D v14.3

JSON Parse

Home

 
4D v14.3
JSON Parse

JSON Parse 


 

JSON Parse ( jsonString {; Typ} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
jsonString  String in Zu analysierender JSON String
Typ  Lange Ganzzahl in Typ, in den die Werte konvertiert werden sollen
Funktionsergebnis  Boolean, Objekt, Text, Zahl, Zeiger in Aus JSON String extrahierte Werte

Die Funktion JSON Parse analysiert den Inhalt einer in JSON formatierten Zeichenkette und extrahiert Werte, die Sie in einem 4D Feld oder einer Variablen speichern können. Diese Funktion deserialisiert Daten im JSON-Format; sie führt die entgegengesetzte Aktion der Funktion JSON Stringify durch.

In jsonString übergeben Sie die in JSON formatierte Zeichenkette, deren Inhalt Sie analysieren wollen. Sie muss korrekt formatiert sein, sonst wird ein Analyse-Fehler erzeugt.

Hinweis: Beim Verwenden von Zeigern müssen Sie zuerst JSON Stringify und dann JSON Parse aufrufen.

Standardmäßig, d.h. ohne den Parameter Typ, versucht 4D, den erhaltenen Wert in den Variablen- oder Feldtypen zu konvertieren, der zum Speichern der Ergebnisse verwendet wird - sofern einer definiert wurde. Andernfalls versucht 4D, den Typ einzuschätzen. Über den Parameter Typ können Sie die Interpretation des Typs erzwingen. Übergeben Sie eine der folgenden Konstanten unter dem Thema Feld und Variablentypen:

Konstante Typ Wert
Is Boolean Lange Ganzzahl 6
Is date Lange Ganzzahl 4
Is LongInt Lange Ganzzahl 9
Is real Lange Ganzzahl 1
Is text Lange Ganzzahl 2

Hinweise:

  • Werte vom Typ Zahl müssen im Bereich ±10.421e±10 liegen
  • In Werten vom Typ Text müssen alle Sonderzeichen in Escape-Sequenzen stehen, inkl. Anführungszeichen (siehe Beispiele)
  • Datum in JSON muss im Format: "\"YYYY-MM-DDTHH:mm:ssZ\"" sein. Die Funktion geht davon aus, dass das 4D Datum eine lokale Zeit enthält und nicht GMT.

Beispiele für eine einfache Konvertierung:

 C_REAL($r)
 $r:=JSON Parse("42.17") //$r = 42,17 (Real)
 
 C_LONGINT($el)
 $el:=JSON Parse("120.13";Is LongInt//$el=120
 
 C_TEXT($t)
 $t:=JSON Parse("\"Year 42\"";Is text// $t="Year 42" (text)
 
 C_OBJECT($o)
 $o:=JSON Parse("{\"name\":\"jean\"}")
  // $o = {"name":"john"} (4D object)
 
 C_BOOLEAN($b)
 $b:=JSON Parse("{\"manager\":true}";Is Boolean// $b=true

Beispiel zum Konvertieren eines Datums:

 $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

Dieses Beispiel zeigt die kombinierte Verwendung der Befehle JSON Stringify und JSON Parse:

 C_TEXT($MyContact)
 C_OBJECT($Contact)
 
  // JSON Stringify: JSON Objekt in JSON String konvertieren
 $MyContact:=JSON Stringify("{\"name\":\"Monroe\",\"firstname\":\"Alan\"}")
  // $MyContact = "{\\"name\\":\\"Monroe\\",\\"firstname\\":\\"Alan\\"}"
  // JSON Parse: JSON String in JSON Objekt konvertieren
 $Contact:=JSON Parse("{\"name\":\"Monroe\",\"firstname\":\"Alan\"}")
  // $Contact = {"name":"Monroe","firstname":"Alan"}

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: JSON
Nummer: 1218

 
GESCHICHTE 

New
Erstellt: 4D v14

 
SIEHE AUCH 

Feld und Variablentypen
JSON PARSE ARRAY
JSON Stringify

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v14 R2)
4D Programmiersprache ( 4D v14 R3)
4D Programmiersprache ( 4D v14.3)
4D Programmiersprache ( 4D v14 R4)