Russian Qt Forum

Qt => Общие вопросы => Тема начата: Viliam_Volos_V от Май 22, 2008, 15:37



Название: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: Viliam_Volos_V от Май 22, 2008, 15:37
Люди может у кого есть готовый клас для работы с ini файлами.
Запись/Чтение.

о существовании QSetting я знаю.


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: pastor от Май 22, 2008, 16:15
А чем неустроил QSetting всеже? о_О


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: Viliam_Volos_V от Май 22, 2008, 16:18
Мне нужна возможность читать ини файл из любой указанной мной дериктории - а QSettings при омпиляции под виндой ведёт себя очень странно


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: pastor от Май 22, 2008, 22:04
А что хоть странного? Сколько работал - все ОК. Можно описать подробнее?


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: lit-uriy от Май 22, 2008, 22:08
Viliam_Volos_V, может ты забыл о двойных обратных слешах используемых в нутри файла?


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: Alex03 от Май 23, 2008, 05:57
А что хоть странного? Сколько работал - все ОК. Можно описать подробнее?

У меня тоже чтото не получалось...
Можно пример использования, чтобы файл был в любом месте и с любым именем, и чтобы имена секций в файле тоже использовать любые - какие хочу...
Ещё желательно чтобы комментарии в файле (с символа '#' или ';') сохранялись после модификации..

В общем сейчас использую свой (когдато переделанный из своего же STL-ного), но не дам ибо писался/используется в коммерческих проектах.


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: Viliam_Volos_V от Май 23, 2008, 10:23
http://ndevilla.free.fr/iniparser/

Вот нашёл такую штуку
Поработаю с ней потом отпишусь


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: Dodge от Июнь 02, 2008, 15:52
Люди может у кого есть готовый клас для работы с ini файлами.
Запись/Чтение.

о существовании QSetting я знаю.


не забывайте указывать формат конфига. Под виндой, если не указать явно формат конфига, то конфиг по дефолту пишется в реестр!
пишем:
Код:
QSetting conf( "myconf.ini" );
...
и получаем конфиг в реестре, пишем:
Код:
QSetting conf( "myconf.ini", QSetting::IniFormat );
...
и получаем конфиг в текущем рабочем каталоге.


Название: Re: [QT 3.3] Поделитесь классом работающим с ini файлами
Отправлено: sendevent от Июнь 23, 2008, 13:54
QSettings пошаливали при работе с виндовым реестром - не сообщалась ошибка записи в "защищенные" ветки (при этом изРидонли тож молчит), и доступ через спецификацию имени
Код:
QString someString = mySettings->value( "/root/group/subgroup/value", QString() );
лучше было делать по группам:
Код:
mySettings->beginGroup("root");
mySettings->beginGroup("group");
mySettings->beginGroup("subgroup");
QString someString = mySettings->value( "value", QString() );
mySettings->endGroup(); //-- subgroup
mySettings->endGroup(); //-- group
mySettings->endGroup(); //-- root
С ини проблем не возникало - создается в произвольном месте, все ведет себя вполне ожидаемо и предсказуемо.
Комменты вроде не поддерживаются, хотя особо не заморачивался.

ЗЖ Тьфу, сорри, не обратил внимания - я про 4.х.х