Qt 创建readcsv类 在readcsv.cpp 读取main.csv文件数据,数据如下: time coName file 5 1 1 1 0 1 3 1 0
时间: 2024-04-09 14:29:21 浏览: 52
下面是一个示例的readcsv类的实现,用于读取main.csv文件的数据:
readcsv.h:
```cpp
#ifndef READCSV_H
#define READCSV_H
#include <QObject>
#include <QStringList>
class ReadCSV : public QObject
{
Q_OBJECT
public:
explicit ReadCSV(QObject *parent = nullptr);
QStringList readData(const QString &fileName);
signals:
};
#endif // READCSV_H
```
readcsv.cpp:
```cpp
#include "readcsv.h"
#include <QFile>
#include <QTextStream>
#include <QDebug>
ReadCSV::ReadCSV(QObject *parent) : QObject(parent)
{
}
QStringList ReadCSV::readData(const QString &fileName)
{
QStringList dataList;
QFile file(fileName);
if (!file.open(QIODevice::ReadOnly))
{
qWarning() << "Cannot open file for reading:" << file.errorString();
return dataList;
}
QTextStream in(&file);
while (!in.atEnd())
{
QString line = in.readLine();
dataList.append(line.split('\t'));
}
file.close();
return dataList;
}
```
在这个示例中,我们创建了一个名为ReadCSV的类,它继承自QObject。readData()函数用于读取CSV文件的数据,并返回一个QStringList,其中包含了每一行的数据。
您可以在您的Qt项目中使用这个readcsv类来读取main.csv文件的数据。只需将readcsv.h和readcsv.cpp文件添加到您的项目中,并在需要读取数据的地方使用它。以下是一个简单的示例:
```cpp
#include <QCoreApplication>
#include "readcsv.h"
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QString fileName = "main.csv";
ReadCSV csvReader;
QStringList data = csvReader.readData(fileName);
for (const QString& line : data)
{
qDebug() << line;
}
return 0;
}
```
请确保将"main.csv"替换为您实际的CSV文件路径。在上述示例中,我们创建了一个ReadCSV对象,并调用它的readData()函数来读取数据。然后,我们遍历返回的QStringList,并打印每一行的数据。
希望这个示例能帮助您开始创建一个用于读取CSV文件数据的readcsv类!
阅读全文