mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2026-01-01 01:00:54 +01:00
39 lines
638 B
ObjectPascal
39 lines
638 B
ObjectPascal
program tbytesstreamtest;
|
|
|
|
{$mode objfpc}{$H+}
|
|
{$apptype console}
|
|
|
|
uses
|
|
SysUtils, Classes;
|
|
|
|
var
|
|
BS: TBytesStream;
|
|
MS: TMemoryStream;
|
|
B: TBytes;
|
|
begin
|
|
B := TBytes.Create(1, 2, 3);
|
|
BS := TBytesStream.Create(B);
|
|
WriteLn(BS.Size);
|
|
|
|
// save it to regular memory stream
|
|
MS := TMemoryStream.Create;
|
|
try
|
|
BS.SaveToStream(MS);
|
|
finally
|
|
BS.Free;
|
|
end;
|
|
|
|
// now restore and compare
|
|
BS := TBytesStream.Create;
|
|
try
|
|
MS.Position := 0;
|
|
BS.LoadFromStream(MS);
|
|
B := BS.Bytes;
|
|
if (Length(B) < 3) or (B[0] <> 1) or (B[1] <> 2) or (B[2] <> 3) then
|
|
halt(1);
|
|
finally
|
|
BS.Free;
|
|
end;
|
|
MS.Free;
|
|
end.
|