Naja, in deinem Beispiel sieht man keine Sub-Arrays. Aber eigentlich solltest du jetzt schon alles beisammen haben, um auch an die Sub-Arrays zu kommen. Ein Beispiel aber noch:
Code:
[
{
"id": 799,
"name": "Ship Your Idea",
"slug": "ship-your-idea-22",
"
wuppdi": [
{
"name": "horst",
"id": 1
},
{
"name": "klaus",
"id": 2
}
]
}
]
Hier hast du also in "
wuppdi" ein Unter-Array.
Um darauf zuzugreifen, könnte man den vorigen Code so erweitern:
Delphi-Quellcode:
Var
jValue :TJSONValue;
jArray: TJSONArray;
subValue: TJSONValue;
subArray: TJSONArray;
Obj: TJsonObject;
RESTRequest1.Execute;
jValue := RESTResponse1.JSONValue;
// Im Memo steht nun die JSON Antwort, so wie ich sie erwarte.
Memo1.Text := jValue.ToString;
jArray := RESTResponse1.JSONValue
as TJSONArray;
// ist überhaupt was im Array?
if jArray.Count>0
then begin
obj:=jArray.Items[0]
as TJSONobject;
subValue:=obj.GetValue('
wuppdi');
if subValue<>
nil then begin
subArray:=subValue
as TJSONArray;
if subArray.Count>0
then begin
[... hier dann etwas mit dem Sub-
Array machen ...]
end;
end;
[... hier dann was mit dem obj machen ...]
end;
// oder alle Elemente durchgehen...
for var i:=0
to jArray.Count-1
do begin
[... mit jedem Item irgendwas machen ...]
end;
Ich schätze, jetzt sollte das Grundprinzip so halbwegs klar sein.