Delphi xe 10のjsonに対する解析応用
1080 ワード
Json文
{"code":100,"state":"true","data":["hero","npc","pet"]}
参照ユニット
タイプの説明
Jsonオブジェクト数の取得
オブジェクト名と数値を巡回
結果表示
指定したオブジェクトの内部値の取得
配列オブジェクトの取得
注意事項
Json解析では,データ内に指定対象名が存在するか否かは判断できないので,指定対象が存在しないか否かを食べる際にget遍歴を用いてデータを読み取るのが妥当である.
{"code":100,"state":"true","data":["hero","npc","pet"]}
参照ユニット
System.JSON
タイプの説明
//
Root:TJSONObject;
//
Root:= TJSONObject.ParseJSONValue(Trim(JsonStr)) as TJSONObject;
Jsonオブジェクト数の取得
Root.Count
オブジェクト名と数値を巡回
for i:=0 to Root.count-1 do
begin
memo1.lines.add(Root.Get(i).JsonString.toString + ' = ' + Root.Get(i).JsonValue.ToString);
end;
結果表示
"code" = 100
"state" = "true"
"data" = {"id":10,"name":"test"}
指定したオブジェクトの内部値の取得
Root.GetValue('data').ToString
配列オブジェクトの取得
json
Arr:TJSONArray;
Arr:=TJSONArray(Root.GetValue('data'));
json
for i:=0 to Arr.Size - 1 do
begin
memo1.lines.add(Arr.items[i].value);
end;
注意事項
Json解析では,データ内に指定対象名が存在するか否かは判断できないので,指定対象が存在しないか否かを食べる際にget遍歴を用いてデータを読み取るのが妥当である.