我正在使用Qt使用QML开发我的C ++应用程序。
这是我的代码
QFile inputFile("data.txt");
//QFile inputFile("/:data.txt");
qDebug() << "Hello:";
if (!inputFile.open(QIODevice::ReadOnly | QIODevice::Text))
{
qDebug() << "Wasn't ready:";
}
else{
qDebug() << "Txt file ready:";
QTextStream in(&inputFile);
while ( !in.atEnd() )
{
QString line = in.readLine();
qDebug() << "message: " << line;
}
}
我想知道为什么它不起作用。控制台始终打印“未准备好”。 请帮忙。
答案 0 :(得分:1)
在执行qDebug() << "Wasn't ready:";
的错误处理块中,您应该调用inputFile.error()
并打印出返回的值,以获取有关错误的详细信息。
也可以通过打印出当前目录来启动程序,以确保在正确的位置搜索文件。