Запись и чтение из двоичного файла

В категорию двоичных файлов входят все нетекстовые типы файлов. Двоичный файл – это файл, содержащий информацию в двоичном виде, записанную в нее программно.

Пример:

В данном примере программа при выходе сохраняет свои размеры и положение окна на экране в двоичный файл и при последующем запуске восстанавливает состояние, которое было при выходе. Программа состоит из двух процедур – обработчиков событий OnShow и OnClose для формы Form1 приложения.

procedure TForm1.FormShow(Sender: TObject);

var

f:file of Integer; // файловая переменная, тип integer

i: Integer; // целочисленная переменная

begin

AssignFile(f, 'razmer.ini');

{$I-}

Reset(f);

{$I+}

if IOResult<>0 then Exit;

Read(f,i); //считать из файла значение

Form1.Top:=i; // верхнее положение окна

Read(f,i);

Form1.Left:=i; // левое положение окна

Read(f,i);

Form1.Width:=i; // ширина окна

Read(f,i);

Form1.Height:=i; // высота окна

CloseFile(f);

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

var f:file of Integer;

begin

AssignFile(f,'razmer.ini');

{$I-}

Rewrite(f);

{$I+}

if IOResult<>0 then Exit;

Write(f,Form1.Top);

Write(f,Form1.Left);

Write(f,Form1.Width);

Write(f,Form1.Height);

CloseFile(f);

end;

Имя файла, в котором хранятся переменные состояния окна, указан без указания на каталог, в котором он находится, просто razmer.ini. В этом случае файл создается и открывается в текущем каталоге. По умолчанию это каталог, из которого была запущена программа.

Задание для самостоятельной работы

В пособии часть I была рассмотрена задача “Опрос читателей библиотеки”. Изменить проект таким образом, чтобы данные, накопленные за день, сохранялись в файле. И при запуске задачи на следующий день, данные считывались из файла и к ним добавлялись данные за следующий день.


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



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