Kod:
program dosyadan_veri_silme;
{$APPTYPE CONSOLE}
const kayitsayisi=20;
type
tamsayilardosyasi=file of integer;
var
dosd:tamsayilardosyasi;
i:1..kayitsayisi;
kayitno:integer;// silinecek kaydın numarası.
sonkayitno:integer;
kayit:integer;
begin
// Dosyaya Yazdırma;
assignfile(dosd,'tamsayi.pas');
rewrite(dosd);
for i:=1 to kayitsayisi do
write(dosd,i);
closefile(dosd);
writeln;
writeln('Dosyaya yazma islemi tamamlandi.');
write('Devam etmek icin bir tusa basin.');
readln;
//Dosyadan kayit silme:
assignfile(dosd,'tamsayi.pas');
reset(dosd);
{$I-}
if ioresult <> 0 then
begin
write('Dosya Bulunamadi.');
readln;
halt
end;
{$I+}
writeln;
write('Silinecek kaydin numarasini giriniz.');
readln(kayitno);
writeln(kayitno+1,'inci kayit silinecek.');
writeln;
writeln('silinen kayit=',kayitno+1);
sonkayitno:=filesize(dosd)-1;
for i:=kayitno+1 to sonkayitno do
begin
seek(dosd,i);// i numaralı kayıda konumlan.
read(dosd,kayit);//i kaydı oku.
seek(dosd,i-1);// i denumaralın önceki konuma yerleş.
write(dosd,kayit);// i den önceki konuma, kayit i yaz.
end;
truncate(dosd); //bulunan kayda dosya sonu isareti koy.
closefile(dosd);
//yeni kaydi dosyadan okutup ekrana yazdirma
assignfile(dosd,'tamsayi.pas');
reset(dosd);
{$I-}
if ioresult <>0 then
begin
write('Dosya Bulunamadi.');
readln;
halt
end;
{$I+}
while not eof(dosd) do
begin
read(dosd,kayit);
writeln('kayit=',kayit);
end;
closefile(dosd);
write('Liste Sonu!..');
readln;
end.