Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 12588
Последний выпуск: 9.07.2014

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

Автор: Ghost Rider
Дата: 26 апреля 2008 года

Использование *.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Кб)

  • Оставить комментарий

    Комментарий:
    можно использовать BB-коды
    Максимальная длина комментария - 4000 символов.
     

    Комментарии

    1.
    1.4K
    31 июля 2006 года
    Shtirlitz
    145 / / 31.07.2006
    +1 / -0
    Мне нравитсяМне не нравится
    4 июля 2008, 17:46:05
    Хотелось бы подобное описание объектов на С++. Если конечно таковые существуют...
    Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
    Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог