Работа с текстовыми файлами в языке Паскаль - 9 стр.

UptoLike

9
Write('Имя выходного файла: ');
ReadLn(SOutFileName);
Write('Количество строк для пропуска: ');
ReadLn(N);
{ Открытие входного файла на чтение }
Assign(FIn, SInFileName);
Reset(FIn);
{ 1. Определение количества строк во входном файле }
NLines := 0;
while not EOF(FIn) do
begin
NLines := NLines + 1;
ReadLn(FIn); { пропуск символов до конца текущей }
{ строки, включая перевод строки }
end; { while not EOF(FIn) }
{ Открытие выходного файла на запись }
Assign(FOut, SOutFileName);
Rewrite(FOut);
{ 2. Копирование (NLines - N) строк в выходной файл }
Reset(FIn); { вновь возврат на начало FIn }
for I := 1 to NLines - N do
begin
while not EOLn(FIn) do
begin
Read(FIn, C); { чтение очередного символа в строке }
Write(FOut, C) { вывод символа в выходной файл }
end; { while not EOLn(FIn) }
ReadLn(FIn); { пропуск в файле перевода строки }
WriteLn(FOut) { перевод строки в выходном файле }
end; { for I := 1 to NLines - N }
{ Закрытие файлов }
Close(FIn);
Close(FOut)
end.