Ну, тут завист от того, как храняться данные в потоке.
Пусть у нас есть запись:
Код:
type
TCustomData = record
Flight : Integer;
Name : String[100];
BaggageNb : Integer;
BaggageWWt : Integer;
end;
PCustomData = ^TCustomData;
Тогда читаем из потока:
Код:
function ReadData(AStream : TStream) : TList;
var
cd : PCustomData;
begin
Result := TList.Create;
AStreem.Seek(0,soFromBeginning);
While Not(AStream.EndOfStream) Do
Begin
New(cd);
AStream.ReadBuffer(cd,SizeOf(TCustomData));
Result.Add(cd);
End;
end;
А с последним вопросом - я не совсем понимаю что нужно то...