If we upload a non-existing Json file, an error appears.
Maybe add a file existence check and if it doesn't exist, then create an empty object?
LoadFromFile:
if SysUtils.FileExists( FileName ) then
begin
F := TFileStream.Create( FileName, fmOpenRead );
...
end
else
FJson.AsObject;