我在解析/proc/stat
Qt 时遇到问题。
我遇到的问题是QFile
状态/proc/stat
既开放又可读。
尝试单独读取行时,QTextStream
显然指示流已完成,但我知道通过运行cat /proc/stat
.
没有while
执行循环中的代码。有什么意见或建议吗?
int UsageStatistics::handle_timeout(const ACE_Time_Value& currentTime, const void* param) {
INFO("Handling timeout\n");
QFile file(QString("/proc/stat"));
if (!file.open(QIODevice::ReadOnly)) {
ERROR("Unable to open file %s, aborting\n", file.fileName().toStdString().c_str());
return false;
}
if (!file.isReadable()) {
ERROR("Unable to read file %s, aborting\n", file.fileName().toStdString().c_str());
return false;
}
QTextStream in(&file);
while (!in.atEnd()) {
QString line = in.readLine();
INFO("%s\n", line.toStdString().c_str());
/// processing
}
file.close();
return true;
}