QFile file("yourfile.txt"); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) return; QTextStream in(&file); int row = 0; while (!in.atEnd()) { QString line = in.readLine(); QStringList fields = line.split("\t"); // replace "\t" with your delimiter for (int i = 0; i < fields.size(); ++i) { QTableWidgetItem *item = new QTableWidgetItem(fields.at(i)); ui->tableWidget->setItem(row, i, item); } ++row; } file.close();帮我将这段代码改进为每行读取文件中的一个数据,每次读取六行到表格的六列中
时间: 2024-03-05 18:52:11 浏览: 114
Qt_文件和磁盘处理
好的,以下是改进后的代码:
```
QFile file("yourfile.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
QTextStream in(&file);
int row = 0;
int col = 0;
while (!in.atEnd()) {
QString line = in.readLine();
QTableWidgetItem *item = new QTableWidgetItem(line);
ui->tableWidget->setItem(row, col, item);
++col;
if (col == 6) {
col = 0;
++row;
}
}
file.close();
```
这段代码会将文件中的每一行作为一个单元格的内容,每次读取六行后就会在表格中新建一行。注意,这里只读取了一个数据,因为每行只有一个数据。如果需要读取多个数据,可以在读取每行时进行分割,并将分割后的数据逐个插入到表格中。
阅读全文