Inversion d'un fichier texte
Voici comment inversé tout un fichier text avec Turbo Pascal...
Tout les commentaire seront appréciés
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| program inverttx;
uses wincrt;
var t,t2:text;
ch:string;
procedure invertch(var ch:string);
var i,l:integer;c:char;
begin
l:=length(ch);
for i:=1 to l div 2 do
begin
c:=ch[i];
ch[i]:=ch[l-i+1];
ch[l-i+1]:=c;
end;
end;
function nbrline(var t:text):integer;
begin
if not(eof(t)) then
begin
readln(t);
nbrline:=1+nbrline(t);
end
else nbrline:=0;
end;
procedure seektxt(var t:text;p:integer);
var i:integer;
begin
reset(t);
for i:=1 to p do
readln(t);
end;
procedure writet2txt(var t,t2:text;n:integer);
var x1:string;
begin
seektxt(t,n);
readln(t,x1);
invertch(x1);
if n=0 then write (t2,x1)
else writeln(t2,x1);
end;
procedure inverttxt(var t,t2:text;n:integer);
begin
if n>=0 then
begin
writet2txt(t,t2,n);
inverttxt(t,t2,n-1);
end;
end;
begin
assign(t,'c:\text.txt');
reset(t);
assign(t2,'c:\text2.txt');
rewrite(t2);
inverttxt(t,t2,nbrline(t)-1);
close(t2);
close(t);
erase(t);
rename(t2,'c:\text.txt');
end. |