Здравствуйте. Подскажите пожалуйста плюсы и минусы при сохранении данных программы в реестр или в файл.
+: В Qt функции сохранения настроек работают только с файлом. -: При переустановке системы данные твои тю-тю. Всё-таки правильнее иметь данные в одном каталоге с программой или, по крайней мере, иметь возможность перекинуть куда захочешь. И вообще, не представляю, кто захочет хранить данные в реестре. Другое дело - настройки, но и в этом случае я не вижу ни одного плюса.
это иерархическая БД ^_^ в принципе можно свести что всё это файл >_< гм, плюсы? немного есть их... зависит от конкретной задачи, озвучте, пожалуйста, и подумать можно будет
Johnikum Подскажите направление, пожалуйста. Из документации я понял, что в Windows возможна только работа с реестром. Для Linux - только файл (логично, там реестра нет).
Phuntik Реестр это файл, база данных находится в нескольких файлах(сам етк.). Так что лечше напрямую в файл писать, так сказать сырая работа с диском.
http://doc.trolltech.com/4.5/qsettings.html Вот к примеру конструктор: Код (Text): QSettings ( const QString & fileName, Format format, QObject * parent = 0 ) второй параметр format может принимать значения: Код (Text): enum Format { NativeFormat, IniFormat, InvalidFormat } также свой можно задать
Phuntik Только нужно иметь в виду, что в винде под юзером запись в папку с программой м.б. запрещена, например в ProgramFiles. Поэтому лучше писать не "куда захочешь", а "куда положено" В частности в ApplicationData всех или текущего юзверя (см. SHGetSpecialFolderPath)
zxcc .ini-файл в папке программы удобно редактировать даже "блокнотом", а для изменения в реестре необходим "редактор реестра". и каждый экземпляр программы (в разных папках) можно настроить по-разному. настройки программы удобнее хранить в .ini-файле. потом ручками искать эту папку неудобно.