2013-06-26 2 views
2

Я протестировал его, но еще не достиг предела, поэтому мне было интересно, имеет ли файл .ini, созданный с использованием QSettings, ограничение длины строки? Невозможно найти соответствующую информацию в документации.QSettings: существует ли ограничение на длину строки .ini?

Благодаря

[EDIT] Соответствующая информация находится на Qt's forum

ответ

4

теоретический предел представляет собой максимальную длину QString, которая проходит в int. Таким образом, максимум составляет 2^31 - 1, более двух миллиардов символов (я не знаю о каких-либо системах с 16-разрядным int, где работает Qt.) Однако для хранения такой памяти потребуется не менее 8 ГБ памяти длинная строка (QString использует UTF-16 внутри).

Если вас интересуют длины строк, которые варьируются от сотен символов, а не от тысяч или миллионов, вам не придется беспокоиться. Кроме того, если вам нужны ini-файлы с длиной строк в тысячах символов, то я сомневаюсь, что для начала вам нужен файл ini; INI-файлы должны использоваться для настроек, а не для хранения данных.

+0

Спасибо! Я думаю, что это 2^32-1, хотя;) – CTZStef

+0

@CTZStef Это 'int', а не' unsigned int', так что это действительно 2^31 - 1 из-за знакового бита :-) –

0

Согласно документам, предел составляет 200 символов. Его можно изменить с помощью опции Compile-time -DINI_MAX_LINE = 1024 и т. Д.