Ho un oggetto JSON, Diamo il nome jobject che assomiglia a questo:Delphi: Accesso JSON oggetti all'interno di un array JSON
{
"id": 0,
"data": "[{DAT_INCL: \"08/03/2012 10:07:08\", NUM_ORDE: 1, NUM_ATND: 1, NUM_ACAO: 2, NUM_RESU: 3},
{DAT_INCL: \"08/03/2012 10:07:09\", NUM_ORDE: 2, NUM_ATND: 1, NUM_ACAO: 4, NUM_RESU: 5},
{DAT_INCL: \"08/03/2012 10:07:09\", NUM_ORDE: 3, NUM_ATND: 1, NUM_ACAO: 8, NUM_RESU: NULL}]"
}
Come si può vedere, contiene due coppie, una delle quali è una matrice con tre oggetti in questo caso (la quantità di oggetti è dinamica) con più "chiavi: valori" (questi non variano, essendo sempre gli stessi 5 campi), che voglio inserire in un database SQL, essendo "chiave" colonna, "valore" essendo campo. La domanda è, come posso accedere a ciascun oggetto individualmente?
Codice-saggio ciò che ho fatto è stato estrarre la coppia che conteneva questo array mettendolo in jPair
jPair := OriginalObject.Get(1);
e poi catturato l'array
jArray:= TJSONArray(jPair.JsonValue);
(Inoltre, come bonus, quando Valutare jArray.Size, il risultato è 6226004. Che cosa?)
Avete qualche codice? –
Sto usando XE2 con DBXJSON e DBXJSONReflect. – bpromas
Originariamente avevo un JSONObject diverso, quindi sostanzialmente in termini di codice quello che ho fatto è stato estrarre la coppia che conteneva questo array mettendolo in jPair (dtPair: = OriginalObject.Get (1);) e quindi catturato l'array (jArray: = TJSONArray (jPair.JsonValue);) (Devo inserire questo codice nel post originale?) – bpromas