Delphi 11 Converting JSON text (De-serialization, Population) into record fields - Quick Clip 2mins

preview_player
Показать описание
In this quick example we will show how to use the Delphi JSON serializer library to convert JSON Text to a record
Chapters:
00:00 Intro
0:12 New Console Project
0:13 Add System.Json.Serializers using Ctrl+U
0:18 Declaring TMyRecord record
0:25 Setup JSON text to De-serialize
0:33 Manage TJsonSerializer instance
0:43 Create, De-serialize values into local TMyRecord Instance
0:54 Create console output of lMyRecord
1:18 Setup Populate example
1:41 Review console output
2:06 Thanks for watching!

Code:

program Project8;

{$APPTYPE CONSOLE}
{$R *.res}

uses
System.JSON.Serializers,
System.SysUtils;
type
TMyRecord = record
Name: String;
Date: TDateTime;
Years: Integer;
end;

begin
try
var lText := '{Name:"Jim",Date:"2022-05-16",Years:23}';
var lSerializer := TJsonSerializer.Create;
try
var lMyRecord: TMyRecord := lSerializer.Deserialize<TMyRecord>(lText);

writeln('Name: ',lMyRecord.Name);
writeln('Date: ',DateToStr(lMyRecord.Date));
writeln('Years: ',lMyRecord.Years.ToString);
writeln;

lSerializer.Populate('{Years:34}',lMyRecord);
writeln('Name: ',lMyRecord.Name);
writeln('Date: ',DateToStr(lMyRecord.Date));
writeln('Years: ',lMyRecord.Years.ToString);
writeln;

Readln;

finally
FreeAndNil(lSerializer);
end;

except
on E: Exception do
Writeln( E.ClassName, ': ', E.Message );
end;

end.

#delphi #json #serializer #serialize #deserialize #populate #embarcadero
Рекомендации по теме
Комментарии
Автор

It just won't work for me, no errors, no nil, no values.

amitaimedan
visit shbcf.ru