1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- 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.
|