crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QSettings и "точка с запятой" в значении
Sokoloff
  опции профиля:
сообщение 28.11.2010, 14:53
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 237
Регистрация: 1.4.2009
Из: Москва
Пользователь №: 654

Спасибо сказали: 50 раз(а)




Репутация:   11  


Похоже наткнулся на баг Qt. читаю данные из INI-шника через QSettings, некоторые значения представляют собой список разделенный точкой с запятой. Похоже Qsettings воспринимает все что после ";" как комментарий. Интересно что этот баг помечен как закрытый еще в 2007 году. Или Qt-шники это сломали в новых версиях, или я что-то не так делаю (хотя что там можно не так сделать?). Вот тестовый пример.
Раскрывающийся текст

test.ini
[Desktop Entry]
Categories=Office;Viewer;Literature;

main.cpp
#include <QtCore/QCoreApplication>
#include <QSettings>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    QSettings settings("test.ini", QSettings::IniFormat);
    qDebug() << settings.value("Desktop Entry/Categories");
    return 0;
}

Пишет - QVariant(QString, "Office"), т.е. глотает Viewer и прочие значения.
Если это у вас повторяется, то буду открывать баг по новой.

У меня kubuntu 10.10 и Qt 4.7.0



Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.12.2024, 4:41