Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа N10.doc
Скачиваний:
3
Добавлен:
08.09.2019
Размер:
208.9 Кб
Скачать

3.4 Работа с файлом

Для работы с файлом используются следующие функции:

Read(f,i); - прочитать элемент в переменную i.

Write(f,1); - записать элемент из переменной i в файл а.

Seek(f,100); - устанавливает указатель в файле на нужную компоненту, в данном случае поставить текущее положение считывания/записи на 101-элемент 9элементы считаются с нуля.

Size(f); - прочитать количество байт в файле.

Eof(f); - узнать не является ли элемент последним, функция возвращает значение true, если достигнута последняя запись (элемент).

3.5 Закрытие файла

После выполнения операций чтения-записи файл необходимо закрыть. Для этого можно воспользоваться процедурой СloseFile:

CloseFile(f);

3.6 Пример работы с типизированным файлом

Создайте обработчик события OnCreate для формы содержащий следующий код:

type

TStudent=record

name:string[255];

oz:integer;

end;

var

Student:TStudent;

File:File of TStudent;

begin

AssignFile(F,'test.dat');

Rewrite(F);

Student.name:='Andrey';

Student.oz:=10;

Seek(F,0);

Write(F,Student);

CloseFile(F);

end;

4 Ini файлы

У INI – файлов есть много преимуществ. С ними работать просто и удобно, они поддерживают три типа данных – String, Integer и Boolean. Кроме того, если бы мы сохраняли настройки в простой текстовый файл, то при изменении одной из настроек требовалось бы перезаписывать весь файл, а ini-файл позволяет перезаписать только этот параметр.

4.1 Объявление

Первым делом, если вы собираетесь работать с ini-файлами, в секцию uses, сразу под словом interface, требуется добавить модуль inifiles, в нем описаны все данные для работы с ini-файлами.

Создайте раздел var и объявите там переменную типа ini-файл:

var

ini : TIniFile; //объявляем переменную типа inifile

4.2 Создание/подключение

Далее мы должны создать файл, если его не существовало, или открыть его, если он уже есть:

ini := TInifile.Create(ExtractFilePath(Application.ExeName)+'my.ini');

Обратите внимание, что мы создаем файл в той же директории, откуда запущена программа. Если бы мы указали просто ini := TInifile.Create('my.ini'); то файл был бы создан в директории Windows.

ini := TInifile.Create('my.ini');

4.3 Чтение-запись

У ini-файла есть три процедуры для записи данных различных типов. WriteInteger, WriteString и WriteBool. Соответственно, эти функции записывают целое число, строку и логический тип. У этих функций есть по 3 параметра. Первый – это раздел ini – файла. В самом файле он выходит в квадратных скобках. Раздел вы можете назвать как угодно. Вторым параметром является название сохраняемого параметра. Третьим параметром функции является его значение. Например:

Ini.WriteInteger('Position', 't', Form1.Top);

Соответственно, мы имеем три процедуры считывания параметров из ini-файла: ReadInteger, ReadString и ReadBool. Данные процедуры имеют схожие параметры с процедурами записи. Здесь интересен третий параметр в функциях записи. Казалось бы, значения нам не нужны, мы берем их из указанных разделов. Но третий параметр обязателен, в нем указывается значение "по умолчанию".