Требуется из простого текстового файла выгрузить данные построчно в QTableView
(используется QStandardItemModel
). Все интересующие меня данные я получаю правильно - одно значение на одну строку, тут никаких проблем. Таблица имеет 5 столбцов и неограниченное количество строк.
Вопрос, собственно, в том, как складывать по 5 строк из файла в одну строку таблицы?
Пока все данные грузятся в первый столбец, количество строк - как в текстовом файле...
Ну например вот так:
//допустим, что у вас уже считаны пять строк из файла (например в QStringList columns)
QList<QStandardItem*> newRow;
for (auto columnText:columns)
{
auto newItem = new QStandardItem(columnText);
newRow.append(newItem);
}
model.appendRow(newRow);
Если без лишних изысков объединить этот вариант и ваш пример из комментариев, то можно получить что-нибудь такое:
int columnIndex = 0;
QRegularExpression re("(.+)=");
QStringList columns;
QTextStream in(&file);
while(!in.atEnd())
{
auto readLine = in.readLine().split(re, QString::SkipEmptyParts);
if (!readLine.isEmpty())
{
columns.append(readLine.at(0));
++columnIndex;
if (columnIndex == 5)
{
QList<QStandardItem*> newRow;
for (auto columnText:columns)
{
auto newItem = new QStandardItem(columnText);
newRow.append(newItem);
}
model.appendRow(newRow);
columns.clear();
columnIndex = 0;
}
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть два реальных IP в разных странах, под каждым своя сеть с локальными адресамиНужно связать конкретный локальный IP одной сети с конкретным...
Не могу разобраться с возвратом массива из функцииКод:
Возникли проблемы в управлении спрайтомКоды клавиш управления храню в (int keyLeft, keyRight), они могут изменяться
есть вот такой буфер hex-значений - fe ff 03 99 00 01