Работа с файлом в целом

Когда нужно выполнить считывание всего текстового файла, его необходимо считывать последовательно до достижения конца файла. Для определения конца файла служит функция Eof. Эта функция принимает единственный параметр файла и возвращает булевское значение, указывающее, был ли достигнут конец файла:

function Eof [ (var F: Text) ]: Boolean;

Как правило, наиболее рациональный способ считывания текстового файла предусматривает использование цикла while, продолжающего итерации вплоть до достижения конца файла. Следующий пример иллюстрирует копирование содержимого одного текстового файла в другой с использованием цикла while not Eof.

program Project1;

{$APPTYPE CONSOLE}

uses

SysUtils;

var

srcFile: Text;

destFile: Text;

line: string;

begin

{ попытка открытия файла-источника }

AssignFile(srcFile, 'data.txt');

{$I-}

Reset(srcFile);

{$I+}

if IOResult = 0 then

begin

{ поппытка открытия целевого файла }

AssignFile(destFile, 'copy.txt');

{$I-}

Rewrite(destFile);

{$I+}

if IOResult = 0 then

begin

{ цикл while, копирующий текст из файла-источника

в файл назначения }

while not Eof(srcFile) do

begin

Readln(srcFile, line);

Writeln(destFile, line);

Writeln('Copying: ', line);

end; // while not eof

CloseFile(destFile);

Writeln;

Writeln('File successfully copied');

end; // если srcFile успешно открыт

CloseFile(srcFile);

end; // если srcFile успешно открыт

Readln;

end.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: