Registriert seit: 8. Jan 2007
472 Beiträge
|
AW: LkJSON Array?!? Lesen und ändern
9. Jan 2024, 22:00
Bei Delphi 2007 dürft mORMot die bessere Wahl sein:
Delphi-Quellcode:
uses
mormot.core.base,
mormot.core.data,
mormot.core.json,
mormot.core.text,
mormot.core.rtti,
mormot.core.variants,
mormot.core.os;
type
TData = packed record
success: Boolean;
data: array of record
id: Integer;
locked: Integer;
end;
end;
const
JSON = '{"success":true,"data": [{"id": "3276","locked": "0"},{"id": "3272","locked": "0"}]}';
var
i: Integer;
rec: TData;
begin
if RecordLoadJson(rec, RawUtf8(JSON), TypeInfo(TData)) then
begin
for i := 0 to High(rec.data) do
begin
...
end;
ShowMessage(Utf8ToString(RecordSaveJson(rec, TypeInfo(TData))));
Oder als DocVariant:
Delphi-Quellcode:
var
doc: TDocVariantData;
begin
if doc.InitJson(JSON) then
begin
with doc.A['data']^ do
begin
if SearchItemByProp('id', '3272', {CaseSensitive=} False) >= 0 then
AddObject(['id', 4000, 'locked', 0]);
end;
ShowMessage(Utf8ToString(doc.ToJson));
end;
Hier noch ein Artikel zum Thema im Forum.
Bis bald...
Thomas
Geändert von mytbo ( 9. Jan 2024 um 22:06 Uhr)
Grund: Link zum Artikel hinzugefügt
|
|
Zitat
|