4

Linux マシンで /proc/PID/status ファイルの内容を読み取って解析したいのですが、読み取りを開始すると QTextStream.atEnd が常に true を返します。コード:

QString procDirectory = "/proc/";
    procDirectory.append(QString::number(PID));
    procDirectory.append("/status");
    QFile inputFile(procDirectory);
    if (inputFile.open(QIODevice::ReadOnly))
    {
        QTextStream in(&inputFile);
        QString line;

        while (!in.atEnd())
        {
            line = in.readLine();

ファイルが存在し、while 式を使用せずに手動で行を読み取ると、ファイルは正常に読み取られます。

明らかな何かを見逃しましたか?

(Debian 8 x64、QT 5.4.1 x64、gcc 4.9.2)

4

2 に答える 2

2

while 句の前に 1 行読む必要があることがわかりましたが、今では機能しています。

于 2015-05-23T18:47:15.780 に答える