Delphi 6 программирование

         

Файлы инициации



20.5.1. Файлы инициации

Файлы инициации в Delphi связаны с объектами класса TIniFile. Эти объекты не являются глобальными и создаются программно по мере надобности. С каждой программой можно связать сколько угодно файлов инициации.
Физически файл инициации представляет собой обычный текстовый файл, который сохраняется либо в каталоге запуска программы (локальный файл), либо в каталоге запуска Windows (глобальный файл инициации). Файл содержит ряд секций, каждая из которых имеет заголовок и следующие за ним параметры. Заголовок - это произвольный английский текст, заключенный в квадратные скобки. Каждый параметр представлен строкой вида
<ИМЯ_ПАРАМЕТРА>=<ЗНАЧЕНИЕ>
Например:
[Location]
DataBase=C:\mybase Graphics=C:\BITMAP
В этом примере в секции Location файла инициации представлены два параметра с именами DataBase и Graphics. Объекты класса TiniFiie предоставляют удобные средства чтения/записи параметров по именам параметров и секций.
В объекте имеется единственное свойство Filename: String, содержащее имя файла инициации с возможным маршрутом поиска.
Методы класса TIniFile:


constructor Create(const FileNameString) ; Создает объект-файл с именем FileName. Это имя автоматически переносится в свойство FileName. Если физический файл существовал, он открывается, если нет создается
procedure DeleteKey(const Section, Ident: String) ;
Уничтожает значение параметра Ident в секции Section. Если указана несуществующая секция или имя несуществующего параметра, метод создаст секцию и/или установит в ней параметр с пустым значением
procedure EraseSection(const Section: String) ; Удаляет секцию со всеми ее параметрами. Если секции не существует, возникает исключительная ситуация
function ReadBool (const Section, Ident:.String; Default: Boolean): Boolean;
Возвращает значение логического параметра Ident в секции section. Возвращает Default, если не существует указанная секция, или в ней нет нужного параметра, или, наконец, параметр имеет не логическое значение
function Readlnteger(const Section, Ident: String; Default:Longint): Longint; Возвращает значение целого параметра Ident в секции Section, Возвращает Default, если не существует указанная секция, или в ней нет нужного параметра, или, наконец, параметр имеет не целое значение
procedure ReadSection (const Section: String; Strings: TStrings); Помещает в список Strings имена всех параметров из секции Section
procedure ReadSections (Strings: TStrings);
Помещает в список Strings имена всех секций файла
procedure ReadSectionValues(const Section: String; Strings: TStrings) ; Помещает в список strings имена всех значений из секции Section
function ReadString(const Section, Ident, Default: String): String;
Возвращает значение строкового параметра Ident в секции section. Возвращает Default, если не существует указанная секция, или в ней нет нужного параметра, или, наконец, параметр не имеет значения
procedure WriteBool(const Section, Ident: String; Value: Boolean);
Записывает в параметр Ident секции section логическое значение value.
procedure Writelnteger(const Sec tion, Ident: String; Value: Longint) ;
Записывает в параметр Ident секции Section целое значение Value
procedure WriteString(const Section, Ident, Value: String); Записывает в параметр Ident секции Section строковое значение value


Содержание раздела