Qt csv转xlsx
时间: 2023-05-25 19:02:39 浏览: 240
以下是使用Qt将CSV转换为XLSX的示例代码:
```cpp
#include <QCoreApplication>
#include <QFile>
#include <QTextStream>
#include <QtXlsx>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//读取CSV文件
QFile csvFile("source.csv");
if(!csvFile.open(QIODevice::ReadOnly | QIODevice::Text))
{
qDebug() <<"Open failed.";
return -1;
}
QTextStream stream(&csvFile);
QStringList csvLines;
while(!stream.atEnd())
{
QString line = stream.readLine();
csvLines.append(line);
}
//创建XLSX文件
QXlsx::Document xlsx;
int row = 1;
foreach(QString line, csvLines)
{
QStringList cells = line.split(",");
int col = 1;
foreach(QString cell, cells)
{
xlsx.write(row, col, cell);
col++;
}
row++;
}
//保存XLSX文件
xlsx.saveAs("output.xlsx");
return a.exec();
}
```
该代码使用QFile和QTextStream读取CSV文件,并使用QtXlsx创建XLSX文件。 首先,将所有行读入QStringList中,然后将它们写入QXlsx::Document中。最后,使用QXlsx::Document中的saveAs()方法保存XLSX文件。 该示例代码将从名为“source.csv”的文件读取数据,并将在名为“output.xlsx”的文件中写入XLSX数据。
阅读全文