qt tableview保存txt
时间: 2023-11-20 20:05:45 浏览: 285
你可以使用以下代码来实现将Qt TableView中的数据保存到txt文件中:
```cpp
void MainWindow::setExcel() {
QString fileName = QFileDialog::getSaveFileName(this, "Save File", "", "Text Files (*.txt)");
if (fileName.isEmpty()) {
return;
}
QFile file(fileName);
if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {
return;
}
QTextStream out(&file);
QAbstractItemModel *model = ui->tableView->model();
int rowCount = model->rowCount();
int columnCount = model->columnCount();
for (int row = 0; row < rowCount; ++row) {
QStringList rowData;
for (int col = 0; col < columnCount; ++col) {
QModelIndex index = model->index(row, col);
QString data = model->data(index).toString();
rowData.append(data);
}
out << rowData.join("\t") << "\n";
}
file.close();
}
```
这段代码中,首先使用`QFileDialog::getSaveFileName`函数来获取保存文件的路径和名称。然后,打开文件并创建`QTextStream`对象以便写入文件。接下来,遍历TableView中的每一行和每一列,将数据写入到txt文件中,每一行的数据使用制表符`\t`分隔。最后,关闭文件。
请注意,你需要在包含文件`<QFileDialog>`和`<QAbstractItemModel>`的头文件中添加相应的头文件引用。此外,你需要根据你的具体情况对代码进行修改。
阅读全文