Русские документы
Ежедневные компьютерные новости RSS rusdoc.ru  Найти :
http://www.rusdoc.ru. Версия для печати.

Работа с *.INI - файлами

Раздел: Programming / Delphi @ 30.07.2008 | Ключевые слова: ini файл delphi сохранение настроек

Автор: Ghost Rider
Источник: CodeNet

Автор: Ghost Rider
Использование *.INI - файлов очень удобно и экономично. В данных файлах вы можете хранить настройки вашей программы (именно для этого они и существуют). Тем самым вы не будете захламлять системный реестр. Использовать *.INI - файлы можно и в других случаях, т.к. синтаксис очень прост и удобен в использовании.

Использование *.INI в Delphi

Для работы с *.INI - файлами в Delphi вам необходимо подключить модуль IniFiles, и создать объект TIniFile, затем с ним работать. После завершения работы объект необходимо удалить методом Free.

Основные методы:

  • Create - создает экземпляр объекта TIniFile в качестве параметра указывается путь и имя файла (если путь не указан, то файл создается в стандартной директории Windows (можно использовать GetDir для создания файла в папке с программой))
    • Free - удаляет объект TIniFile
    • FileName - возвращает имя файла, с которым связан объект TIniFile
    • DeleteKey - удаляет ключ в разделе
    • EraseSection - удаляет раздел
    • ReadInteger - считывает из файла целочисленные данные
    • ReadString - считывает из файла строковые данные
    • ReadBool - считывает из файла логические (true, false) данные
    • WriteBool - записывает в файл логические данные
    • WriteString - записывает в файл строковые данные
    • WriteInteger - записывает в файл целочисленные данные
    • ReadSection - извлекает имена идентификаторов в указанном разделе INI - файла
    • ReadSections - извлекает все имена разделов
    • ReadSectionValues - извлекает из заданного раздела все ключи
    • ReadBinaryStream - считывает поток из файла
    • WriteBinaryStream - записывает поток в файл

    Для более детального изучения можно обратиться к исходному коду модуля IniFile (однако приведенных выше методов вполне хватает для работы).

    Вот несколько дополнительных функций, которые помогут вам в решении некоторых проблем связанных с использованием INI - файлов:

    WriteProfileString и WritePrivateProfileString - сбрасывают изменения в INI - файле на диск, что позволяет немедленно записать все изменения в вашем файле настроек. Функции находятся в модуле Windows.pas (импортированы из kernel32.dll).

    А вот еще небольшая вещь: сообщение WM_WININICHANGE позволяет отслеживать изменения происходящие в файле Win.ini.

    Иерархия объектов

    Возможно вам потребуется обрабатывать исключительные ситуации, возникающие при работе с INI - файлами. В этом вам поможет класс EIniFileException (Exception).

    Также в модуле IniFiles описаны два дополнительных класса (в помощь TMemIniFile - файлы в памяти (увеличивается быстродействие, но при неправильной работе можно вызвать сбой)) - это TStringHash и THashedStringList.

    Скачать пример к статье (ZIP; 1.7Кб)



  • Вернуться в раздел: Programming / Delphi
    © Copyright 1998-2012 Александр Томов. All rights reserved.