Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Файл конфигурации


Автор: Dicobraz 30.5.2002, 12:50
Нет ли у кого информации о существующем(й) классе(библиотеке) для разбора
файла конфигурации?
Стандартный ini-файл не подходит, так как требуется бОльшая вложенность и гибкость...

Лень велосипед изобретать...  :cool

Автор: Vit 30.5.2002, 15:26
А чем Registry не подходит? И стандартный и уровни вложенности... А если же надо свое, то используй таблицу.

Автор: Dicobraz 31.5.2002, 06:45
Не понял что-то... Какую таблицу?

А насчет Registry я думал... Так-то оно так, но если конфиг большой - стоит ли засорять реестр? Хотя, конечно, лишние 100кБ его не добьют...

Тут еще встает вопрос о кросс-платформности...

Мысль видно, придется повторить...

Автор: Vit 31.5.2002, 15:33
Цитата(Dicobraz @ 30.5.2002, 22:45)
Не понял что-то... Какую таблицу?

Когда конфигурация очень большая и многомерная я использую таблицу в любой базе данных (обычно MS Access через ADO) примерно следующей структуры (Это если полностью эмулировать INI, в реале можно добавить еще полей для многоуровневости):

Section | KeyName | DataType | KeyValue

Автор: Dicobraz 3.6.2002, 06:32
Ах вот о какой таблице речь...
Ну да, это понятно. С самого начала именно так я и хотел поступить, только структуру немного другой хотел сделать - для удобства заполнения древовидной структуры памяти.

Дело в том, что про размер-то я спросил с прицелом на возможное применение в будущем... А сейчас конфиг скромный, но древовидный. Поэтому и хотелось готовый парсер.

Скорее всего, напишу абстрактный предок, потомки которого будут возвращать очередную пару "имя=значение" для разных источников - реестр, файл или БД.

Автор: Vit 3.6.2002, 06:58
Если замыкаться на древовидных структурах используй XML - стандартных парсеров хоть отбавляй...

Автор: Dicobraz 3.6.2002, 07:35
Хм... Мысль правильная.
Вот только не подкинешь ли толковую доку или ее адрес?
А то я с ним не очень знаком. :)

Автор: Vit 3.6.2002, 15:19
Честно говоря доки у меня нет, я его пользую очень ограниченно. Просто в инете поищи "XML", "DOM" (DOM-это представление XML в виде объектов)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)