Приветствую.
На QT пишу редко, отсюда незнание особенностей.
Столкнулся с проблемой при чтении файлов, размер которых превышает 1.5Гб.
Предположим, имеется текстовый файл размером 2 Гб, хочу впихнуть его в память в виде хеш-таблицы.
В качестве примера:
QString line;
QFile mfile("bigfile.txt");
if(!mfile.open(QIODevice::ReadOnly))
qDebug() << "Error opening file";
QTextStream in(&mfile);
QHash<QString, quint64> myHash;
quint64 c = 0;
do {
c++;
line = in.readLine();
myHash.insert(line, c);
} while (!line.isNull());
Дело в том, что когда приложение набирает около 1300 мб, вылетает ошибка.
![4dee37afdcc3075c89ce0b7f510432.jpg](//habrastorage.org/files/91a/5f9/5d9/91a5f95d9ac44d39af1fbef25b046a54.jpg)
Судя по всему, это защита ОС.
Хотелось бы услышать правильное решение проблемы.
Основная задача - это создать что-то вроде массива/хеш таблицы для удобной работы с элементами, удаление дублей, сортировка и т.д.
Заранее спасибо.