Сохранение данных

Тема в разделе "WASM.BEGINNERS", создана пользователем zxcc, 17 авг 2009.

  1. zxcc

    zxcc New Member

    Публикаций:
    0
    Регистрация:
    21 окт 2006
    Сообщения:
    172
    Здравствуйте.
    Подскажите пожалуйста плюсы и минусы при сохранении данных программы в реестр или в файл.
     
  2. spa

    spa Active Member

    Публикаций:
    0
    Регистрация:
    9 мар 2005
    Сообщения:
    2.240
    zxcc
    для данной конкретной задачи лучше хранить данные на бумажке
     
  3. Phuntik

    Phuntik New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2008
    Сообщения:
    318
    +:
    В Qt функции сохранения настроек работают только с файлом.
    -:
    При переустановке системы данные твои тю-тю.
    Всё-таки правильнее иметь данные в одном каталоге с программой или, по крайней мере, иметь возможность перекинуть куда захочешь.

    И вообще, не представляю, кто захочет хранить данные в реестре. Другое дело - настройки, но и в этом случае я не вижу ни одного плюса.
     
  4. al79

    al79 Алексей

    Публикаций:
    0
    Регистрация:
    11 май 2006
    Сообщения:
    133
    Адрес:
    Екатеринбург
    А бывает и такое, что урезаны права, тогда в реестр не всегда удастся записать.
     
  5. Johnikum

    Johnikum Member

    Публикаций:
    0
    Регистрация:
    6 июн 2003
    Сообщения:
    97
    >В Qt функции сохранения настроек работают только с файлом.
    не правда
    реестр и файл
     
  6. IceT

    IceT IceT

    Публикаций:
    0
    Регистрация:
    13 авг 2009
    Сообщения:
    233
    Адрес:
    RU
    А реестр - это не файл?)
     
  7. Noman

    Noman New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2009
    Сообщения:
    27
    это иерархическая БД ^_^
    в принципе можно свести что всё это файл >_<

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

    Phuntik New Member

    Публикаций:
    0
    Регистрация:
    4 фев 2008
    Сообщения:
    318
    Johnikum
    Подскажите направление, пожалуйста. Из документации я понял, что в Windows возможна только работа с реестром. Для Linux - только файл (логично, там реестра нет).
     
  9. Clerk

    Clerk Забанен

    Публикаций:
    0
    Регистрация:
    4 янв 2008
    Сообщения:
    6.689
    Адрес:
    РБ, Могилёв
    Phuntik
    Реестр это файл, база данных находится в нескольких файлах(сам етк.). Так что лечше напрямую в файл писать, так сказать сырая работа с диском.
     
  10. Johnikum

    Johnikum Member

    Публикаций:
    0
    Регистрация:
    6 июн 2003
    Сообщения:
    97
    http://doc.trolltech.com/4.5/qsettings.html

    Вот к примеру конструктор:
    Код (Text):
    1. QSettings ( const QString & fileName, Format format, QObject * parent = 0 )
    второй параметр format может принимать значения:
    Код (Text):
    1. enum Format { NativeFormat, IniFormat, InvalidFormat }
    также свой можно задать
     
  11. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    Phuntik
    Только нужно иметь в виду, что в винде под юзером запись в папку с программой м.б. запрещена, например в ProgramFiles. Поэтому лучше писать не "куда захочешь", а "куда положено" ;) В частности в ApplicationData всех или текущего юзверя (см. SHGetSpecialFolderPath)
     
  12. t00x

    t00x New Member

    Публикаций:
    0
    Регистрация:
    15 фев 2007
    Сообщения:
    1.921
    zxcc
    .ini-файл в папке программы удобно редактировать даже "блокнотом", а для изменения в реестре необходим "редактор реестра".
    и каждый экземпляр программы (в разных папках) можно настроить по-разному.
    настройки программы удобнее хранить в .ini-файле.

    потом ручками искать эту папку неудобно.
     
  13. leo

    leo Active Member

    Публикаций:
    0
    Регистрация:
    4 авг 2004
    Сообщения:
    2.542
    Адрес:
    Russia
    t00x
    "Вам шашечки, или ехать ?!" (C)
     
  14. Partner

    Partner Павел

    Публикаций:
    0
    Регистрация:
    28 фев 2008
    Сообщения:
    917
    Адрес:
    Los Angeles
    Кстати, к регистру можно подключить свой фал (Load Hive) и работать с ним через Registry API.