无法读取文本文件并将其保存在带有QFile的stl向量中

时间:2014-12-01 18:10:41

标签: c++ vector stl qfile qtextstream

这是我在这里的第一个问题,我总能找到我需要的答案,但今天,#34;总是"哈哈结束了。我的问题是我试图用QFile和QTextStream读取文本文件并将值保存在STL向量中。当我尝试阅读载体时,我得到的是空的(原谅我的英语错误,不是我的第一语言)。在这里,我给你留下了方法。

bool TGraphic::process_data( void )
{
bool openingOk = false;
QString line;

if(QFile::exists( this->input_file.fileName() ))
{
    openingOk = this->input_file.open(QIODevice::Text | QIODevice::ReadOnly);
    QTextStream flujo(&input_file);

    while(!(flujo.atEnd()))
    {
        line = flujo.readLine();   
        this->data.push_back( line.toInt() );  // data is std::vector<int> data;
    }
}
return openingOk;
}

编译器没有给我任何错误但是当我这样做时

void Ventana::on_pbGraphic_clicked()
{
    imgGen = new TGraphic(fileName);
    std::vector<int> aux(imgGen->getVector());

    bool dataOk, graphicOk;
    img = new QPixmap(400, 300);

    dataOk = imgGen->process_data();

    graphicOk = imgGen->process_graphic(*img);

    if(dataOk && graphicOk && !(aux.empty())) // ** THE LAS CONDITION GAVE ME FALSE **
    {
        //ui->labGraphic->setPixmap(*img);
        ui->labNombreArchivo->setText(QString::number(aux[0])); // I TRIED TO GET THE
    }                                                           // THE FIRST VALUE OF
    else                                                        // THE VECTOR AND THE
    {                                                           // PROGRAM FAILS THERE.
        ui->labGraphic->setText("Error.");
    }
}
在dialog.cpp中

我得到一个假。你们能帮忙看看问题出在哪里吗?如果您需要额外的信息,请问我。谢谢!

0 个答案:

没有答案