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

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

После того, как мы сохранили параметры в ini- файл, его необходимо закрыть:

ini.Free;

4.5 Пример работы с ini-файлом.

Пример демонстрирует способ сохранение параметров формы.

Ниже приведен код обработчика события закрытия формы OnClose, предназначенный для записи параметров в файл.

var

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

begin

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

//сохраняем позицию окна:

ini.WriteInteger('Position', 'L', Form1.Left);

ini.WriteInteger('Position', 'T', Form1.Top);

//сохраняем размеры окна:

ini.WriteInteger('Size', 'W', Form1.Width);

ini.WriteInteger('Size', 'H', Form1.Height);

//закрываем файл:

ini.Free;

Ниже приведен код обработчика события создания формы, предназначенный для чтения параметров из файла

procedure TForm1.FormCreate(Sender: TObject);

var

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

begin

//теперь создаем ее:

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

//применяем позицию окна:

Form1.Left := ini.ReadInteger('Position', 'L', 329);

Form1.Top := ini.ReadInteger('Position', 'T', 261);

//читаем размеры окна:

Form1.Width := ini.ReadInteger('Size', 'W', 384);

Form1.Height := ini.ReadInteger('Size', 'H', 312);

//закрываем файл:

ini.Free;

end;

5 TFileStream

Класс TFileStream позволяет создать поток для работы с файлами. При этом поток работает с файлом без учета типа хранящихся в нем данных

5.1Объявление и инициализация переменной.

Первым делом необходимо создать переменную типа TFileStream:

var

f : TFileStream;

Таким образом, мы объявили переменную типа объект TFileStream, и в дальнейшем можем работать с этой переменной, как с объектом. То есть, указывать имя этой переменной, а после точки выбирать свойства, методы и события этого объекта. Однако объявить переменную мало, требуется еще проинициализировать ее.

f := TFileStream.Create(параметры);

У метода Create объекта TFileStream может быть три параметра, причем третий параметр необязателен, его можно не указывать. Разберемся с этими параметрами.

Имя файла – этот параметр – простая строка, которая может содержать только имя файла, или полное имя файла, включая и адрес.

Режим открытия. Здесь можно указать один из следующих параметров:

  • fmCreate – Создать файл с указанным в первом параметре именем. Если файл уже существует, он откроется в режиме для записи.

  • fmOpenRead – Открыть файл только для чтения. Если файл не существует, произойдет ошибка, поэтому прежде требуется выполнить проверку на существование файла. Запись в файл в этом режиме невозможна.

  • fmOpenWrite – Открыть файл для записи. При этом текущее содержимое файла уничтожается, и файл перезаписывается.

  • fmOpenReadWrite – Открыть файл для редактирования, то есть, и чтения, и записи.

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

  • fmShareCompat – Другие приложения тоже имеют право работать с открытым файлом.

  • fmShareExclusive – Другие приложения не смогут открыть файл.

  • fmShareDenyWrite – Другие приложения смогут открыть файл только для чтения, записать в него данные они не смогут.

  • fmShareDenyRead – Другие приложения смогут открыть файл только для записи, для чтения они не смогут его открыть.

  • fmShareDenyNone – не мешать другим приложениям работать с файлом.

Пример:

f := TFileStream.Create('C:\MyFile.txt', fmOpenReadWrite, fmShareExclusive);