TStream.Read procedure
Read data from stream to buffer.
Declaration
procedure Read(var Buf; Count: LongInt); virtualDescription
Read is an abstract method that should be overridden by descendent
objects.
Read reads
Count bytes from the stream into
Buf.
It updates the position pointer, increasing it's value with
Count.
Buf must be large enough to contain
Count bytes.
Errors
No checking is done to see if
Buf is large enough to contain
Count bytes.
See also
Example: ex18
program ex18;
{ Program to demonstrate the TStream.Read method }
Uses Objects;
Var Buf1,Buf2 : Array[1..1000] of Byte;
I : longint;
S : PMemorySTream;
begin
For I:=1 to 1000 do
Buf1[I]:=Random(1000);
Buf2:=Buf1;
S:=New(PMemoryStream,Init(100,10));
S^.Write(Buf1,SizeOf(Buf1));
S^.Seek(0);
For I:=1 to 1000 do
Buf1[I]:=0;
S^.Read(Buf1,SizeOf(Buf1));
For I:=1 to 1000 do
If Buf1[I]<>buf2[i] then
Writeln ('Buffer differs at position ',I);
Dispose(S,Done);
end.An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
