Класс INIFILES - работа с INI файлами Класс INIFILES - работа с INI файлами
Теория |
*
| *
|
| |
Почему иногда лучше использовать INI-файлы, а не реестр?
1. INI-файлы можно просмотреть и отредактировать в обычном блокноте.
2. Если INI-файл хранить в папке с программой, то при переносе папки на другой
компьютер настройки сохраняются.
3. Новичку в реестре можно запросто запутаться или (Боже упаси), чего-нибудь не
то изменить.
Поэтому для хранения параметров настройки программы удобно использовать стандартные INI
файлы Windows. Работа с INI файлами ведется при помощи
объекта TIniFiles модуля IniFiles. Краткое описание
методов объекта TIniFiles дано ниже.
Constructor Create('d:\test.INI');
Создать экземпляр объекта и связать его с
файлом. Если такого файла нет, то он создается, но
только тогда, когда произведете в него запись
информации.
WriteBool(const Section, Ident: string; Value: Boolean);
Присвоить элементу с именем Ident раздела Section
значение типа boolean
WriteInteger(const Section, Ident: string; Value: Longint);
Присвоить элементу с именем Ident раздела Section
значение типа Longint
WriteString(const Section, Ident, Value: string);
Присвоить элементу с именем Ident раздела Section
значение типа String
ReadSection (const Section: string; Strings: TStrings);
Прочитать имена всех корректно описанных
переменных раздела Section (некорректно описанные
опускаются)
ReadSectionValues(const Section: string; Strings: TStrings);
Прочитать имена и значения всех корректно
описанных переменных раздела Section. Формат :
имя_переменной = значение
EraseSection(const Section: string);
Удалить раздел Section со всем содержимым
ReadBool(const Section, Ident: string; Default: Boolean): Boolean;
Прочитать значение переменной типа Boolean
раздела Section с именем Ident, и если его нет, то вместо
него подставить значение Default.
ReadInteger(const Section, Ident: string; Default: Longint): Longint;
Прочитать значение переменной типа Longint
раздела Section с именем Ident, и если его нет, то вместо
него подставить значение Default.
ReadString(const Section, Ident, Default: string): string;
Прочитать значение переменной типа String
раздела Section с именем Ident, и если его нет, то вместо
него подставить значение Default.
Free;
Закрыть и освободить ресурс. Необходимо
вызвать при завершении работы с INI файлом
Property Values[const Name: string]: string;
Доступ к существующему параметру по имени Name
Пример |
*
| *
|
| |
Procedure TForm1.FormClose(Sender: TObject);
var
IniFile:TIniFile;
begin
IniFile := TIniFile.Create('d:\test.INI'); { Создали экземпляр объекта }
IniFile.WriteBool('Options', 'Sound', True); { Секция Options: Sound:=true }
IniFile.WriteInteger('Options', 'Level', 3); { Секция Options: Level:=3 }
IniFile.WriteString('Options' , 'Secret password', Pass);
{ Секция Options: в Secret password записать значение переменной Pass }
IniFile.ReadSection('Options ', memo1.lines); { Читаем имена переменных}
IniFile.ReadSectionValues('Options ', memo2.lines); { Читаем имена и значения }
IniFile.Free; { Закрыли файл, уничтожили объект и освободили память }
end;
© Зайцев Олег, "Программирование на Delphi - обмен опытом" 1999-2004. При использовании любых материалов данного сайта
необходимо указывать источник информации. Дата обновления: 22.11.2004. Сайт размещен на хостинге AGAVA - Хостинг от AGAVA.ru