pas2js/demo/rtl/demoloadstringsfromurl.lpr

54 lines
1.0 KiB
ObjectPascal

program demoloadstringsfromurl;
{$mode objfpc}
uses
browserconsole, Classes;
Procedure DumpList(s : Tstrings);
Var
I : Integer;
begin
Writeln('----------');
For I:=0 to S.Count-1 do
Writeln('Line[',I,'] : ',S[I]);
Writeln('----------');
end;
Var
Lst,lst2,lst3 : TStrings;
begin
Writeln('Loading synchronously');
Lst:=TStringList.Create;
try
Lst.LoadFromFile('bytes.txt');
DumpList(Lst);
finally
Lst.Free;
end;
Writeln('Loading asynchronously');
// We can't free the stringlist, because of the async nature
Lst2:=TStringList.Create;
Lst2.LoadFromURL('bytes.txt',True,procedure(Sender: tobject)
begin
DumpList(Lst2);
end
);
Writeln('Loading non-existing file');
// We can't free the stringlist, because of the async nature
Lst3:=TStringList.Create;
Lst3.LoadFromURL('bytesnonexist.txt',True,procedure(Sender: tobject)
begin
DumpList(Lst3);
end
,
procedure(Sender: tobject; Const aError : string)
begin
Writeln('Load error: ',aError);
end
);
end.