0

QTextStream を使用して QList を直接入力したいと思います。このコードは正しく機能しています:

QList<int> str;

QFile file_read1("C:/Programs/file.txt");
if(file_read1.open(QFile::ReadOnly))
{
    QTextStream read1(&file_read1);
    read1.seek(0);
    int i=0;
    int aux=0;
    while (!read1.atEnd())
    {
        read1>>aux;
        str.append(aux);
        //read1>>str[i];  //I'd like to use something like this
        //i++;
    }
}

return a.exec();
}

while ループ内のコメント化されたコードが、コメント化されていない (および read1>>aux;str.append(aux); がコメント化されている) と正しく機能しないのはなぜだろうか。使えるのですが、str.at(i)で値が読めても、str.count()は0を返し、str.isEmptyはtrueです。

補助変数 aux を使用する必要がない、コメントされたもののような別のソリューションがありますか?

4

1 に答える 1