Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Чем вы пользуетесь для разбора конфиг файлов, Интересно кто чем пользуется 
:(
    Опции темы
chaos
Дата 25.3.2009, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: 6
Всего: 44



День добрый!
Хотелось бы узнать у обитателей данного форума: какими либами вы пользуетесь для разбора конфигов к своим приложениям
название, +- на ваш взгляд, может кто пользовался несколькими - сравните

Заранее благодарен!
PM WWW   Вверх
andrew_121
Дата 25.3.2009, 10:57 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



chaos, Я использую свой вариант. Сам написал с нуля. Так как, когда мне такое понадобилось, начал искать, и нечего удовлетворяющего моим запросам не нашел.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Anikmar
Дата 25.3.2009, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Лично я так, как в основном пишу на билдере использую TIniFile.

В случаях, когда конфиг слишком сложный и неудобный для представления в текстовом виде - пишу сам, в виде набора структур.
PM MAIL ICQ   Вверх
GoldFinch
Дата 25.3.2009, 11:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 15
Всего: 26



GetPrivateProfile*()
PM MAIL ICQ   Вверх
mrbrooks
Дата 25.3.2009, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 2
Всего: 306



как и Anikmar, пользуясь Борманом, использую TIniFiles.
Однако не гнушаюсь и БД - слишком много было данных - поэтому использовать настроечную таблицу был очень кашерный выход.
PM MAIL   Вверх
Anikmar
Дата 25.3.2009, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Цитата

mrbrooks
Однако не гнушаюсь и БД - слишком много было данных - поэтому использовать настроечную таблицу был очень кашерный выход. 


А какой? Я что-то подходящее не нашел, чтобы было небольшое и можно было вместе с программой таскать и запускать на другом компе без каких-либо дополнительных установок.
PM MAIL ICQ   Вверх
Alca
Дата 25.3.2009, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Цитата

А какой?

MDB + ADO smile

Цитата

какими либами вы пользуетесь для разбора конфигов

Под винду:
GetPrivateProfileInt
GetPrivateProfileSection
GetPrivateProfileSectionNames
GetPrivateProfileString
GetPrivateProfileStruct
GetProfileInt
GetProfileSection
GetProfileString
WritePrivateProfileSection
WritePrivateProfileString
WritePrivateProfileStruct
WriteProfileSection
WriteProfileString
....

Это сообщение отредактировал(а) Alca - 25.3.2009, 12:07


--------------------
PM WWW ICQ Skype Jabber   Вверх
andrew_121
Дата 25.3.2009, 12:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(Alca @  25.3.2009,  12:04 Найти цитируемый пост)
Под винду:
GetPrivateProfileInt
GetPrivateProfileSection
GetPrivateProfileSectionNames
GetPrivateProfileString
GetPrivateProfileStruct
GetProfileInt
GetProfileSection
GetProfileString
WritePrivateProfileSection
WritePrivateProfileString
WritePrivateProfileStruct
WriteProfileSection
WriteProfileString

Крайне не удобные функции. Хоть бы обертку в виде класса написать... )))


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Lazin
Дата 25.3.2009, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



Цитата(chaos @  25.3.2009,  10:54 Найти цитируемый пост)
Хотелось бы узнать у обитателей данного форума: какими либами вы пользуетесь для разбора конфигов к своим приложениям
название, +- на ваш взгляд, может кто пользовался несколькими - сравните

чаще всего - реестр windows, однажды использовал lua(удобно, когда конфиги должны редактироваться юзером), БД то-же неплохой вариант
PM MAIL Skype GTalk   Вверх
Rickert
Дата 25.3.2009, 12:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ситхи не пройдут!
****


Профиль
Группа: Комодератор
Сообщений: 3356
Регистрация: 11.7.2006
Где: Лакрима

Репутация: 0
Всего: 52



andrew_121, +1 тож сам писал smile


--------------------
Ни что не внушает сна крепче, чем день приисполненный трудов!
PM MAIL WWW Skype GTalk   Вверх
Helmet
Дата 25.3.2009, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 30
Регистрация: 27.2.2009
Где: Someone's hea d

Репутация: нет
Всего: 1



QSettings  smile 

Это сообщение отредактировал(а) Helmet - 25.3.2009, 12:19
PM   Вверх
mrbrooks
Дата 25.3.2009, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 2
Всего: 306



Цитата(Anikmar @  25.3.2009,  11:47 Найти цитируемый пост)
А какой? Я что-то подходящее не нашел, чтобы было небольшое и можно было вместе с программой таскать и запускать на другом компе без каких-либо дополнительных установок. 

скажем так - в данном случае настроечная таблица и была к базе данных, поэтому отдельно бд конечно не использовалась. Сама БД была на MySQL. А так хоть тот же Access. Работать будет нормально и без офиса. Это конечно под винду. Так же думаю покатит и LiteSQL. Да и что СУБД мелких мало что ли, которые не требуют инсталяции.
PM MAIL   Вверх
Andrey44
Дата 25.3.2009, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



XML


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
andrew_121
Дата 25.3.2009, 12:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(Andrey44 @  25.3.2009,  12:42 Найти цитируемый пост)
XML 

Да. Только если проект использует ее не только ради этого. А иначе, смысл = 0 )


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Rififi
Дата 25.3.2009, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



конфиги храню в xml, разбираю своим классом на базе msxml
PM MAIL   Вверх
Alca
Дата 25.3.2009, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Цитата

Крайне не удобные функции. Хоть бы обертку в виде класса написать... )))

Крайне не удобные, пока не напишешь врапер. 


--------------------
PM WWW ICQ Skype Jabber   Вверх
azesmcar
Дата 25.3.2009, 12:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



chaos, использую то что есть в стандарте, то чего нету - пишу сам (если речь конечно идет о чистом С++). А так у каждой библиотеки свои классы (о них тут уже написано немало).
PM   Вверх
Andrey44
Дата 25.3.2009, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



написал два сообщения

Это сообщение отредактировал(а) Andrey44 - 25.3.2009, 12:59


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Alca
Дата 25.3.2009, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Чем XML лучше INI? 


--------------------
PM WWW ICQ Skype Jabber   Вверх
Andrey44
Дата 25.3.2009, 12:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Цитата(andrew_121 @  25.3.2009,  12:44 Найти цитируемый пост)
Да. Только если проект использует ее не только ради этого. А иначе, смысл = 0 ) 

Не совсем понял высказывание по поводу смысла. smile 

Это сообщение отредактировал(а) Andrey44 - 25.3.2009, 12:57


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Andrey44
Дата 25.3.2009, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



иксмл может иметь более вложенную структуру.


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Anikmar
Дата 25.3.2009, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Лично у меня душа к XML не лежит. Не вижу никаких преимуществ для использования в качестве хранилища конфигурации.
Реестр по большей части не подходит - так как проект запускается с флешки и должен все у себя хранить.
PM MAIL ICQ   Вверх
azesmcar
Дата 25.3.2009, 13:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Anikmar, в дот.нет есть XML серилизация, очень удобно для хранения конфигурации. Можно сразу сохранить обьект класса в файл, со всеми его данными.

Это сообщение отредактировал(а) azesmcar - 25.3.2009, 13:11
PM   Вверх
Rififi
Дата 25.3.2009, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Alca
Чем XML лучше INI?  
структурированностью, возможностью жесткой валидации по схеме
PM MAIL   Вверх
Lazin
Дата 25.3.2009, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3820
Регистрация: 11.12.2006
Где: paranoid oil empi re

Репутация: 41
Всего: 154



в случае использования xml, встает вопрос о сохранности данных, например в ситуации, когда во время сохранения данных в конфиг. файл отключают электричество, нажимают на reset, кончается место на диске, или происходит ошибка в программе.
В этом случае, ваш конфигурационный файл может остаться в невалидном состоянии, что может привести к невозможности запуска программы и необходимости ее переустановки.
Именно поэтому, лучше использовать БД(с поддержкой транзакций(например  sqlite)) или реестр(который именно для этого и предназначен), или изобретать велосипед, пытаясь реализовать сохранение в файл атомарно. smile 
PM MAIL Skype GTalk   Вверх
Andrey44
Дата 25.3.2009, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Цитата(Rififi @  25.3.2009,  13:16 Найти цитируемый пост)
структурированностью, возможностью жесткой валидации по схеме 

И еще базовый синтаксис языка XPath похож на адресацию в файловой системе.
Очень легко читать и писать данные.

Добавлено через 4 минуты и 6 секунд
БД надо с собой таскать в смысле длл а xml есть всегда. По крайней мере в Windows


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
andrew_121
Дата 25.3.2009, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(Alca @  25.3.2009,  12:54 Найти цитируемый пост)
Крайне не удобные, пока не напишешь врапер.  

Гм... Спасибо за комментирование...
Цитата(Andrey44 @  25.3.2009,  12:57 Найти цитируемый пост)
Не совсем понял высказывание по поводу смысла. smile 

Речь идет о том, что если для разбора вы юзаете libxml2, или что-то на ее основе, и в других целях она не используется в вашем проекте, то зачем тащить за проектом такого динозавра.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Anikmar
Дата 25.3.2009, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Anikmar, в дот.нет есть XML серилизация, очень удобно для хранения конфигурации. Можно сразу сохранить обьект класса в файл, со всеми его данными.

А Framework он не потребует в нагрузку?
PM MAIL ICQ   Вверх
azesmcar
Дата 25.3.2009, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 81
Всего: 211



Цитата

А Framework он не потребует в нагрузку? 


потребует конечно smile
Цитата

Лично у меня душа к XML не лежит. Не вижу никаких преимуществ для использования в качестве хранилища конфигурации.

я как пример преимущества для использования в качестве хранилища конфигурации. К тому же если нужно хранить иерархические данные - XML в самый раз.
PM   Вверх
Andrey44
Дата 25.3.2009, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 2
Всего: 26



Цитата(andrew_121 @  25.3.2009,  13:25 Найти цитируемый пост)
Речь идет о том, что если для разбора вы юзаете libxml2, или что-то на ее основе

А если не пользуюсь ничем подобным.
Есть просто интерфейсы IXMLDOM.............. и т.д.


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Rififi
Дата 25.3.2009, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Lazin
.. отключают электричество..
я вот кстати не в курсе, а что при этом будет в случае записи в реестр? Откат изменений?
вроде бы, *Transacted функции только в Vista и Server 2008 появились...
PM MAIL   Вверх
Alca
Дата 25.3.2009, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3993
Регистрация: 14.6.2006

Репутация: 7
Всего: 50



Цитата

БД надо с собой таскать в смысле длл а xml есть всегда. По крайней мере в Windows

АДО есть в винде  smile 


--------------------
PM WWW ICQ Skype Jabber   Вверх
Anikmar
Дата 25.3.2009, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Цитата

azesmcar
я как пример преимущества для использования в качестве хранилища конфигурации. К тому же если нужно хранить иерархические данные - XML в самый раз. 


На вкус и на цвет... Подходы могут быть весьма различные. Но на этот случай у меня свой класс написан. Почему-то захотелось свое. Может, конечно, и велосипед, но не люблю xml и все тут.  smile 

PM MAIL ICQ   Вверх
Rififi
Дата 25.3.2009, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Alca
АДО есть в винде
только в случае mdb (jet engine) получаем гемор в 64-битной среде. а в наше время закрывать глаза на поддержку 64-битной платформы - это как прятать голову в песок :gigi:
PM MAIL   Вверх
mrbrooks
Дата 25.3.2009, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 2
Всего: 306



Цитата(Andrey44 @  25.3.2009,  13:20 Найти цитируемый пост)
БД надо с собой таскать в смысле длл а xml есть всегда

это смотря для каких.

Добавлено через 2 минуты и 5 секунд
Rififi
Цитата(Rififi @  25.3.2009,  13:38 Найти цитируемый пост)
Alca, 
только в случае mdb (jet engine) получаем гемор в 64-битной среде. а в наше время закрывать глаза на поддержку 64-битной платформы - это как прятать голову в песок :gigi: 

более того еще полно машин и с 2000 маздаем. там сплошь и рядом 3 версия Jet'a - это если без SP

PM MAIL   Вверх
Rififi
Дата 25.3.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Anikmar
чисто интереса для.
как бы ты хранил в ini и доставал/записывал данные из вот такого конфига:
Код
<server>
   <mbean code="org.jboss.mq.server.jmx.Queue" name="jboss.mq.destination:service=Queue,name=tutorial">
      <attribute name="JNDIName">queue/tutorial/example</attribute>
      <depends optional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>
   </mbean>
</server>

PM MAIL   Вверх
Anikmar
Дата 25.3.2009, 13:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Цитата

Rififi
Anikmar, 
чисто интереса для.
как бы ты хранил в ini и доставал/записывал данные из вот такого конфига:


А что хранить то вообще надо (слаб я в разметке xml - каюсь)

PM MAIL ICQ   Вверх
Rififi
Дата 25.3.2009, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



Anikmar
А что хранить то вообще надо
всё, что выделено синим и обычным шрифтом, то есть аттрибуты (org.jboss.mq.server.jmx.Queue, ...) и тела (queue/tutorial/example, ...) нодов (server, mbean, ...) а также их взаимное расположение друг относительно друга в иерархии
PM MAIL   Вверх
Anikmar
Дата 25.3.2009, 14:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2513
Регистрация: 26.11.2006
Где: Санкт-Петербург

Репутация: 9
Всего: 59



Т.е что-то типа того должно получиться?
[Server]
code="org.jboss.mq.server.jmx.Queue"
name="jboss.mq.destination:service=Queue,name=tutorial"
JNDIName=queue/tutorial/example
DestinationManager=jboss.mq:service=DestinationManager

Если серверов несколько можно и так:
[GENERAL]
ServerCount=4

[Server1]
... Необходимые настройки
[Server2]
... Необходимые настройки

Я не говорю, что INI это панацея. Я просто говорю, что мне не нравится xml и не было случая в моей практике, когда я бы спокойно не мог без него обойтись. Может такой случай и наступит. 
Мои конфиги как правило - прстой набор имен параметров и их значений.


PM MAIL ICQ   Вверх
andrew_121
Дата 25.3.2009, 14:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 6
Всего: 33



Цитата(Andrey44 @  25.3.2009,  13:30 Найти цитируемый пост)
Есть просто интерфейсы IXMLDOM.............. и т.д. 

Прошу прощения, кодю в основном для Linux. Там такого нет.
Это что-то вроде очередной  Мелкософтовской заморочки? smile 


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
Rififi
Дата 25.3.2009, 15:24 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1254
Регистрация: 9.3.2008

Репутация: 11
Всего: 36



andrew_121,
Это реализация парсера от ms, основанная на компонентной модели.

Добавлено через 8 минут и 28 секунд
Anikmar

Если серверов несколько
несколько может быть не только серверов, но и нодов mbean, attribute внутре нода server
тогда "плоская" модель ini-фала начинает превращаться в тихий ужас

иногда можно встретить такой workaround

server.mbean.code=...
server.mbean.name=...
...

ну, может кому-то такие телеги и нравятся... :gigi:

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

всё это самому проверять? а может просто валиться из-за неправильного парсинга? :fear:
не, нафик такое сщастие smile
PM MAIL   Вверх
inside_pointer
Дата 29.3.2009, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 9.3.2008

Репутация: 5
Всего: 12



xml удобно для программы а не для пользователя, простые конфиги легко запоминаются, а здесь ещё надо xml знать (то есть напрямую конфиг не подредактируешь, а то что-нибудь сломается и обратно не восстановишь)
PM MAIL   Вверх
sparn
Дата 29.3.2009, 03:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 21
Регистрация: 11.5.2006

Репутация: нет
Всего: 1



Конфиги предпочитаю хранить в виде XML, использую минималистичный парсер TinyXML. Объёмные данные  предпочитаю хранить в БД и для клиентских приложений в этих целях использую sqlite.
PM MAIL   Вверх
MAKCim
Дата 29.3.2009, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 52
Всего: 207



libconfig


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
Master01
Дата 29.3.2009, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 22.8.2007

Репутация: 2
Всего: 2



поддерживаю вариант XML
PM MAIL   Вверх
jonie
Дата 29.3.2009, 17:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 15
Всего: 118



мы используем связку XML+INI. В XML у нас сама структура конфига, и из него есть ссылки на ini - вроде макросов: "%INI:path/section/value"

почему так? потому что некоторые администраторы (да и не только они) в упор не понят все спецсимволы которые нужно экранировать в XML, да и в общем-то сложно редактировать XML.

ессно на всё это написана ООП надстройка, которая для программиста скрывает все "предести" )


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
semibug
Дата 31.3.2009, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 323
Регистрация: 27.3.2009

Репутация: нет
Всего: нет



XML via tinyXML
PM   Вверх
korbian
Дата 1.4.2009, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 336
Регистрация: 20.2.2007
Где: Penza

Репутация: 2
Всего: 14



использую xml конфиг файлы. для формирования\чтения\редактирования применяю XML Archives из boost::serialization.


--------------------
korbian ©
PM   Вверх
Alexk553
Дата 27.11.2009, 13:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 8.11.2009

Репутация: нет
Всего: нет



Ну, если нужна вложенность, что мешает использовать SQLite + значения типа 

уровеньвложения1/уровеньвложения2/уровеньвложения3/имяпараметра

Если приложение сложное, то дополнительные расходы на поддержку SQLite не так и заметны, а если небольшое приложение, то вложенность не нужна и можно спокойно прикрутить что-то своё с атомарной струкурой и возможностью отката, вмонтировав LZ компрессию для истории изменений типа открытого 7z. 
PM MAIL   Вверх
Abyx
Дата 27.11.2009, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 601
Регистрация: 3.11.2009

Репутация: 1
Всего: 10



планирую использовать boost.PropertyTree
PM MAIL   Вверх
djamshud
Дата 27.11.2009, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 8
Всего: 39



Простые храню в виде

#define key value

сложные - xml. Для обоих случаев написал простенькие парсеры.

Добавлено через 2 минуты и 50 секунд
Раньше еще пользовался чем-то похожим на .ini-файлы, с поддержкой древовидных конфигов и всяких плюшек вроде макросов и инклудов. Но там парсер получился сложный, однажды решил что-то изменить и сам запутался в собственном коде. Этот вариант конфигов вытеснил нынешний xml.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1633 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.