Import .CSV data to QTableView
Solved
General and Desktop
-
Hi! I wanna read data from .csv file into QTableView.
I used this code, but it doesn't work. How to fix that? Please helpQStandardItemModel *model = new QStandardItemModel; QFile file("test.csv"); if (file.open(QIODevice::ReadOnly)) { int lineindex = 0; // file line counter QTextStream in(&file); // read to text stream while (!in.atEnd()) { // read one line from textstream(separated by "\n") QString fileLine = in.readLine(); // parse the read line into separate pieces(tokens) with "," as the delimiter QStringList lineToken = fileLine.split(",", QString::SkipEmptyParts); // load parsed data to model accordingly for (int j = 0; j < lineToken.size(); j++) { QString value = lineToken.at(j); QStandardItem *item = new QStandardItem(value); model->setItem(lineindex, j, item); } lineindex++; } file.close(); } ui->tableView->setModel(model);```// It doesn't work
-
@ro12man3 Take a look at this line:
QStringList lineToken = fileLine.split(",", QString::SkipEmptyParts);
it is splitting on ',' character not blanks!
Change it to:QStringList lineToken = fileLine.split(' ', QString::SkipEmptyParts);