L'algoritmo l'ho trovato e funziona alla perfezione ma mi sa che ho trovato un bug nel TP.

Se apro il file, leggo dal file è tutto ok ma al momento della sovrascrittura non funziona e mi lascia il file invariato...

this is the code :
codice:
PROGRAM commenta;
USES crt;
CONST N=100;

TYPE generico = RECORD
                  appoggio : string;
                END;
     classe   = ARRAY[1..N] OF GENERICO;

VAR  conf : TEXT;
     j,i,max : INTEGER;
     c:classe;

begin
clrscr;

{$I-}
ASSIGN(conf,'c:\nome_file.txt');
RESET (conf);

writeln('LEGGE IL FILE');

i:=1;
WHILE not eof(conf) DO
                    Begin
                    ReadLn(conf,c[i].appoggio);
                    if length(c[i].appoggio)>max then max:=length(c[i].appoggio);
                    i:=i+1;
                    End;
readkey;

writeln('SCRIVE CONTENUTO FILE');

FOR j:=1 to i do writeln(c[j].appoggio);

readkey;
max:=max+12;

writeln('MODIFICA RECORD');

for j:=1 to i do
              begin
              while (length(c[j].appoggio)<max) do
                                       begin
                                       c[j].appoggio:=c[j].appoggio+' ';
                                       end;
              Insert(';',c[j].appoggio, length(c[j].appoggio));
              end;
readkey;

writeln('SCRIVE IL RECORD MODIFICATO');

FOR j:=1 to i do writeln(c[j].appoggio);

readkey;
writeln('SCRIVE CONTENUTO FILE MODIFICATO');
reset(conf);

for j:=1 to i do
              begin
              writeln(conf,c[j].appoggio);
              end;

close(conf);

{$I+}
readkey;
end.
Scusate per l'eleganza a basso livello ma devo ancora passare per la fase "pulizia del codice"