在mormot2使用json发现要遍历比较麻烦
procedure TForm1.Button4Click(Sender: TObject);
var
Doc, Doc1, doc2: TDocVariantData;
//jarr:IDocList;
MjStr, mStr: string;
i:integer;
j: integer;
begin
mjstr := '{"status":"200","flag":"SUCCESS","message":"操作成功",' +
'"action":"safetyLogin","version":"v1.0","format":"json","datas":' +
'[{"sessionUuid":"0cdb276a98a24d03aad4814e9d059781","tenantCountFlag":2}]}';
doc.InitJson(MjStr);
//doc1:=doc.o['datas'];
doc1 := TDocVariantData(doc.GetValueByPath(['datas']));
for i := 0 to doc.Count-1 do
begin
mStr:=VariantToString(doc.names[i])+'='+VariantToString(doc.Values[i]);
writeln(mstr);
//WriteLn(doc.Values[i]);
end;
Memo1.Lines.Add(doc1.ToJson());
//if doc1.IsArray then ShowMessage('array');
Memo1.Lines.Add('=========doc2');
doc2 := TDocVariantData(Doc1._[0]^);//只有一条数据、、{"sessionUuid":"0cdb276a98a24d03aad4814e9d059781","tenantCountFlag":2}
Memo1.Lines.Add(doc2.ToJson());