type
TPersona = record
Nombre: string[64];
Edad: Byte;
end;
var
F: file of TPersona;
Persona: TPersona;
Size: LongInt;
Pos: LongInt;
BEGIN
{Lee todo el archivo}
Size := FileSize(F);
while not EOF(F) do
begin
ReadLn(F, Persona);
Pos := FilePos(F);
WriteLn('Registro N: ', Pos, ' Nombre: ', Persona.Nombre, ' Edad: ', Persona.Edad);
end;
{Se posiciona en la mitad del archivo y lee el registro}
Seek(F, Size div 2);
ReadLn(F, Persona);
Pos := FilePos(F);
WriteLn('Registro N: ', Pos, ' Nombre: ', Persona.Nombre, ' Edad: ', Persona.Edad);
{pide una posicion y va ahi y lee}
Write('Ingrese posicion: ');
ReadLn(Pos);
Seek(F, Size div 2);
ReadLn(F, Persona);
WriteLn('Registro N: ', Pos, ' Nombre: ', Persona.Nombre, ' Edad: ', Persona.Edad);
END.