proceudre WriteOne(Stream: TFileStream; Index: Integer; Value: TDataType);
begin
  Stream.Position := SizeOf(Value) * Index;
  Stream.WriteBuffer(Value, SizeOf(Value));
end;var
  Stream: TFileStream;
  Value: TDataType;
begin
  //init Value ..
  Stream := TFileStream.Create('Myfile.dat', fmOpenWrite);
  WriteOne(Stream, index, Value);
  Stream.Free;
end;