Primero si te lees bien dicha normativa, verás que se trata de registros cuyos dos primeros números son, a saber:
11 : Registro de inicio
22 : Aquí propiamente está el movimiento bancario
23 : Comentario a dicho movimiento.
33: Registro de final de cuenta.
88: Registro de final de fichero.
Cada uno de estos tipo de registros está suficientemente documentado en la normativa.
Como se trata de un fichero de tipo texto, para leerlo creo que la opción más apropiada sería cargarlo en un StringList:
Código Delphi
[-]
procedure TForm1.Button1Click(Sender: TObject);
var
F: TextFile;
S: String;
Sl:TStringList;
begin
Sl:=TStringList.Create();
If OpenDialog1.Execute then
begin
AssignFile(F, OpenDialog1.Filename);
Reset(F);
While not SeekEof(F) do
begin
Readln(F,S);
Sl.Add(s);
end;
CloseFile(F);
end;
end;
Ahora ya tenemos todas las líneas en un StringList, nos queda extraer la primera (11) que contiene información sobre la cuenta y cliente, recorrer todas las de tipo (22 y 23) que tienen los movimientos y poco más.
Un Saludo.