1. Необходимо понять структуру INI-файла:
;комментарий
[название раздела]
ключевое слово=значение
...
Файлы INI допускают несколько разделов, и каждый раздел допускает несколько ключевых слов. За знаком «=" следует значение ключевого слова.
Существует три типа значений: строки, целочисленные значения и логические значения. Строка сохраняется в INI-файле без кавычек, логическое значение true обозначается 1, а логическое значение false обозначается 0.
Комментарии начинаются с точки с запятой ";".
2. Определение
1. Добавьте IniFiles в раздел «Использование» интерфейса;
2. Добавьте строку в раздел определения переменной Var:
мойинифайл: Тинифайл;
Затем вы можете создавать, открывать, читать, записывать и выполнять другие операции с переменной myinifile.
3. Откройте INI-файл.
myinifile:=Tinifile.create('program.ini');
Приведенная выше строка оператора установит связь между переменной myinifile и конкретным файлом program.ini. Затем значения ключевых слов в файле program.ini можно будет прочитать и записать через переменную myinifile.
Стоит отметить, что если в имени файла в скобках не указан путь, то файл Program.ini будет храниться в каталоге Windows. Способ сохранения файла Program.ini в текущем каталоге приложения — указать. полный путь и имя файла. Следующие два утверждения могут выполнить эту функцию
способный:
Имя файла:=ExtractFilePath(Paramstr(0))+'program.ini';
myinifile:=Tinifile.Create(имя файла);
4. Прочитайте значение ключевого слова
Для трех типов данных: строк, целочисленных значений и логических значений, поддерживаемых файлами INI, класс TINIfiles предоставляет три различных объектных метода для чтения значений ключевых слов в файлах INI.
Предположим, что определенные переменные vs, vi и vb имеют строковый, целочисленный и логический типы соответственно.
vs:=myinifile.Readstring('имя раздела','ключевое слово',значение по умолчанию);
vi:=myinifile.Readinteger('имя раздела','ключевое слово',значение по умолчанию);
vb:=myinifile.Readbool('имя раздела','ключевое слово',значение по умолчанию);
Значением по умолчанию является значение по умолчанию, возвращаемое, если ключевое слово не существует в INI-файле.
5. Запишите INI-файл.
Аналогично, класс TInifile также предоставляет три различных объектных метода для записи ключевых слов строкового, целочисленного и логического типов в INI-файл.
myinifile.writestring('имя раздела', 'ключевое слово', переменная или строковое значение);
myinifile.writeinteger('имя раздела', 'ключевое слово', переменная или целочисленное значение);
myinifile.writebool('имя раздела', 'ключевое слово', переменная или True или False);
Если файл INI не существует, приведенный выше оператор автоматически создаст файл INI.
6. Удалить ключевые слова
Помимо добавления ключевого слова с помощью метода write, класс Tinifile также предоставляет объектный метод для удаления ключевых слов:
myinifile.DeleteKey('имя раздела','ключевое слово');
7. Работа раздела
Добавление раздела можно выполнить с помощью метода write, а удаление раздела можно выполнить с помощью следующего метода объекта:
myinifile.EraseSection('имя раздела');
Кроме того, класс Tinifile также предоставляет три объектных метода для работы с разделами:
myinifile.readsection('имя раздела', переменная TStrings); может читать все имена ключевых слов в указанном разделе в переменную списка строк;
myinifile.readsections(переменная TStrings) может читать все имена разделов в INI-файле в переменную списка строк.
myinifile.readsectionvalues('имя раздела', переменная TStrings) может читать все строки (включая ключевые слова, =, значения) указанного раздела в INI-файле в переменную списка строк.
8. Релиз
Освободите myinifile в соответствующем месте со следующей инструкцией:
мойинифайл.дистория;
9. Пример
Ниже используется простой пример (показанный на рисунке), чтобы продемонстрировать метод создания, чтения и хранения INI-файлов. Файл myini.ini содержит раздел «Параметры программы» и три ключевых слова: имя пользователя (строка), официальный статус пользователя (логическое значение) и прошедшее время (целочисленное значение). Программа считывает эти данные при создании формы и записывает файл myini.ini при освобождении формы.
Прикрепленный список исходных программ
единицаUnit1;
интерфейс
использует
Windows, сообщения, SysUtils, варианты, классы, графика, элементы управления, формы,
Диалоги, IniFiles, StdCtrls, ExtCtrls;
тип
TForm1 = класс (TForm)
Edit1:TEdit;
Edit2: TEdit;
CheckBox1:TCcheckBox;
Таймер1:Ттаймер;
процедураFormCreate (Отправитель: TObject);
процедураFormDestroy (Отправитель: TObject);
процедураTimer1Timer (Отправитель: TObject);
частный
{Частные декларации}
общественный
{Публичные декларации}
конец;
вар
Форма1:ТФорма1;
мойинифайл: Тинифайл;
выполнение
{$R*.dfm}
процедураTForm1.FormCreate(Отправитель:TObject);
вар
имя файла: строка;
начинать
имя файла:=ExtractFilePath(paramstr(0))+´myini.ini´;
myinifile:=TInifile.Create(имя файла);
edit1.Text:=myinifile.readstring(«параметры программы», «имя пользователя», «имя пользователя по умолчанию»);
edit2.text:=inttostr(myinifile.readinteger('параметры программы','прошедшее время',0));
checkbox1.Checked:=myinifile.readbool('параметры программы','является ли это официальным пользователем',False);
конец;
процедураTForm1.FormDestroy(Отправитель:TObject);
начинать
myinifile.writestring('параметры программы','имя пользователя',edit1.Text);
myinifile.writeinteger('параметры программы','прошедшее время',strtoint(edit2.text));
myinifile.writebool('Параметры программы', 'Это официальный пользователь', checkbox1.Checked);
мойинифайл.Уничтожить;
конец;
процедураTForm1.Timer1Timer(Отправитель:TObject);
начинать
edit2.Text:=inttostr(strtoint(edit2.text)+1);
конец;
конец.
Этот пример прошел отладку под Delphi6.0+WinXP.