Russian Qt Forum

Qt => Вопросы новичков => Тема начата: White Owl от Сентябрь 01, 2015, 18:42



Название: QSettings лимит на строковых данных
Отправлено: White Owl от Сентябрь 01, 2015, 18:42
Напоролся на странное. Используя QSettings читаю из .ini файла (Qt5.4, Win). Если значение строки слишком длинное - строка не читается. Опытным путем нашел что игнорируются строки длиннее 200 букв (проверял только на английском тексте).
Гугление нашло вот эту статью: http://gadgetsytecnologia.com/c39edf38bbbffe764/qsettings-is-there-a-limit-ini-files-line-length.html
Но ковыряние в исходниках Qt ничего не дало. Не вижу, где там используется упомянутый дефайн и вообще не вижу никаких ограничений в коде QSettings.
Чего-то я не понимаю...


Название: Re: QSettings лимит на строковых данных
Отправлено: Johnik от Сентябрь 01, 2015, 23:50
Попробовал с версиями Qt 5.3.1, 5.4.1, 5.5.0 (Win; MSVC-2010)

Без проблем прочитал строки по 1800 символов, дальше экспериментировать не стал.


Название: Re: QSettings лимит на строковых данных
Отправлено: Bepec от Сентябрь 02, 2015, 00:30
Какой результат у вас?
Приведите пример строки записываемой и читаемой.
Вы дебагером точно проходили ф-цию?


Название: Re: QSettings лимит на строковых данных
Отправлено: Tuxford от Сентябрь 02, 2015, 10:58
Смотрел исходники QSettings (Qt5.5). Нет там никакого ограничения.


Название: Re: QSettings лимит на строковых данных
Отправлено: gil9red от Сентябрь 02, 2015, 11:12
Напоролся на странное. Используя QSettings читаю из .ini файла (Qt5.4, Win). Если значение строки слишком длинное - строка не читается. Опытным путем нашел что игнорируются строки длиннее 200 букв (проверял только на английском тексте).
Гугление нашло вот эту статью: http://gadgetsytecnologia.com/c39edf38bbbffe764/qsettings-is-there-a-limit-ini-files-line-length.html
Но ковыряние в исходниках Qt ничего не дало. Не вижу, где там используется упомянутый дефайн и вообще не вижу никаких ограничений в коде QSettings.
Чего-то я не понимаю...

Приведите минимально компилябельный пример, иллюстрирущий проблему :)