從文件中讀取數據,並保持在一個QHash如下:獲取指針回到第一線 - 一個QFile
QHash<int, QVector<float> >
我的數據文件不包含頭文件,所以當我第一次創建矢量然後進入文件循環,我錯過了第一行的數據。我的來源是:
QFile file("...\\a.csv");
if(!file.open(QIODevice::ReadOnly))
{
QMessageBox::warning(0, "Error", file.errorString());
}
QString fileLine = file.readLine();
QStringList fileLineSplit = fileLine.split(',');
hashKeySize = fileLineSplit.size();
for(int t=0; t<hashKeySize; t++)
{
QVector<float> vec;
hash_notClustered[t] = vec;
}
while(!file.atEnd())
{
QString line = file.readLine();
QStringList list = line.split(',');
for(int t = 0; t<list.size(); t++)
{
hash_notClustered[t].push_back(list[t].toFloat());
}
}
問:我怎樣才能得到的指針回到第一線與while(!file.atEnd())
循環不要錯過第一行是什麼時候?
或者您可以使用'QFile :: seek'將光標移動到文件的開頭。 – alexisdm