Vraag Qt - lezen van een tekstbestand


Ik heb een tabelweergave met drie kolommen; Ik ben net gepasseerd om met behulp van deze code in een tekstbestand te schrijven

QFile file("/home/hamad/lesson11.txt");
if(!file.open(QIODevice::WriteOnly)) {
    QMessageBox::information(0,"error",file.errorString());
}
QString dd;

for(int row=0; row < model->rowCount(); row++) {
     dd = model->item(row,0)->text() +  ","
                 + model->item(row,1)->text() +  ","
                 + model->item(row,2)->text();

     QTextStream out(&file);
     out << dd << endl;
 }

Maar het lukt me niet om hetzelfde bestand opnieuw te lezen, ik heb deze code geprobeerd maar ik weet niet waar het probleem zit

QFile file("/home/hamad/lesson11.txt");
QTextStream in(&file);
QString line = in.readLine();
while(!in.atEnd()) {

    QStringList  fields = line.split(",");

    model->appendRow(fields);

}

Hulp alstublieft?


23
2018-04-10 03:16


oorsprong


antwoorden:


U moet de stringregel vervangen

QString line = in.readLine();

in terwijl:

QFile file("/home/hamad/lesson11.txt");
if(!file.open(QIODevice::ReadOnly)) {
    QMessageBox::information(0, "error", file.errorString());
}

QTextStream in(&file);

while(!in.atEnd()) {
    QString line = in.readLine();    
    QStringList fields = line.split(",");    
    model->appendRow(fields);    
}

file.close();

82
2018-04-10 07:59