之前用的微软com组件生成excel文件,在要求机器长时间运行,记录大量数据保存时,com组件效率极低,3000*20的数据量最后保存时花费了将近5分钟。因而转用xlsx导出excel文件。以下为个人保存时的代码,仅作记录用,作为典型保存代码以防忘记。
void record::on_pushButton_data_save_clicked()//数据导出按钮槽函数
{
//xlsx导出
QXlsx::Document xlsx;
QStringList titleList;
QString filePathName;
QString defaultFileName = "Test.xls";
// 设置保存的默认文件名称
QFileInfo fileinfo(defaultFileName);
// 获取保存文件路径
QFileDialog *fileDlg = new QFileDialog(this);
fileDlg->setWindowTitle("保存文件");
fileDlg->setAcceptMode(QFileDialog::AcceptSave);
fileDlg->selectFile(defaultFileName);
fileDlg->setNameFilter("Excel Files(*.xls *.xlsx)");
fileDlg->setDefaultSuffix("xls");
if (fileDlg->exec() == QDialog::Accepted)//点击保存
{
filePathName = fileDlg->selectedFiles().at(0);
}