QtXlsx读写.xlsx基本内容
QtXlsx例子中方法还是很全的,这里整理一下
.xlsx实质上是一个zip压缩的xml文件集,可以把后缀名改为.zip打开。
Workbook* myworkbook=xlsx->workbook();QString filePath = QFileDialog::getOpenFileName(0, "Open xlsx file", QString(), "*.xlsx"); if (filePath.isEmpty()) { qDebug()<<"load file fails"; return NULL; } Document* xlsx=new Document(filePath);
foreach(QString sheetName,myworkbook->sheetNames()) { Worksheet *sheet = static_cast<Worksheet *>(myworkbook->sheet(sheetName)); }
从QList容器 sheetNames()中获得sheetName,从Worksheet中获取 Worksheet 指针
sheet->dimension().lastRow()
sheet->dimension().lastColumn()
可以获得最后一排的有效数据的位置,
double row_heigh=sheet->rowHeight(i+1);
double col_width=sheet->columnWidth(j+1);
可以获得在xlsx文件中保存的行高和列宽,这里注意QtXlsx行和列是从1开始的,所以获得行和列获取的都是i+1和j+1;Cell *cell =sheet->cellAt(i+1, j+1);
获得i行