Вторник, Октябрь 20Добро пожаловать!

Ввод из файла и открытие файла для ввода в языке Delphi

Ввод из файла в языке Delphi

Обычно, в процессе выполнения первоначальные данные в программу вводятся пользователем с клавиатуры – такой способ использования исходных данных порой занимает определенное время. Однако в языке Delphi, как и в других языках программирования, программа может считывать первичные данные, например, из текстового файла. Осуществим ввод из файла в языке Dephi, следуйте следующей пошаговой рекомендации:

  1. объявление файловой переменной типа TextFile,
  2. назначение этой файловой переменной (применяя функцию AssignFile) имени файла, из которого первичные данные будут вводиться,
  3. открытие файла для чтения,
  4. чтение (ввод) данных с использованием инструкции read или readln.

Открытие файла для чтения в языке Delphi

Чтобы открыть файл для ввода(чтения), используют процедуру Reset, обладающей одним параметром – файловой переменной. Перед вызовом данной процедуры нужно связать файловую переменную с конкретным(реальным) файлом при помощи функции AssignFile.

Пример. (Вызов инструкции открытия файла для ввода):

AssignFile(fn, ‘m:\testfile.txt’); 
Reset(fn);

В случае неверного указания имени файла (например, файл с данным именем отсутствует на диске) происходит возникновение ошибки времени выполнения программы. Также отметим, что другая причина появления ошибки при открытии файла, который находится на гибком диске, связана в большей степени с отсутствием готовности дисковода (другими словами, диск отсутствует в накопителе). На основе этого в программе необходимо учесть вероятность повторного открытия файла после того, как было подтверждено повторение операции.

Как и в случае открытия файла для записи, программой может быть проведена обработка возможной ошибки в момент открытия файла, используя проверку значения функции IOResult. Ниже представим фрагмент исходного кода программы, в котором проводится проверка результата открытия файла с применением функции lOResult. В случае возникновения ошибки при попытке открыть файл программой выводится специальное диалоговое окно, содержащее сообщение об ошибке и запрос на подтверждение повторной операции открытия файла.

Пример. (Обработка ошибки при открытии файла (используется функция IOResult Delphi))

var
fn:string[90]; // имя файла 
f:TextFile;     // текстовый файл 
kod: integer; // код ошибки открытия файла 
otvet: word;  // ответ пользователя 
begin
fn:= ‘a:\testfile.txt’; 
AssignFile (f, fn);
repeat
{$I-}
Reset(f); // открываем файл для чтения 
{$!+}
kod:=IOResult;  // значение функции IOResult
if kod <> 0
then otvet:=MessageDlg(‘Ошибка открытия файла ‘
+ fn+#13 +’Повторить попытку?’,mtWarning, [mbYes, mbNo],0); 
until (kod = 0) or (otvet = mrNo);
if kod <> 0
then 
exit; // завершение процедуры 
//  при успешном открытии файла здесь выполняются необходимые инструкции
end;

Надеюсь подробно пояснил, как происходит ввод из файла в языке Delphi.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *