Qt C++读取while while循环不初始化
问题描述:
我检查过,如果文件的位置是正确的,所以我不知道为什么我的程序不工作。我几乎一直在看它几个小时,但我仍然无法找出什么是错的。我真的很感激任何意见。Qt C++读取while while循环不初始化
文本在文本文件中:鲍勃Janurary 1 2000数学7A 5 41 7 9 8 8 9
相关的代码:
void MainWindow::on_pushButton_clicked()
{
QString name, month, subject, level;
int day, year, apages, total, one, two, three, four, five, six, seven, eight, nine, ten;
QFile file("C:/Users/brandan/Desktop/GUIPrograms/Kumon.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
QTextStream stream(&file);
QString line;
do
{
qDebug() << "test";
line = stream.readLine();
qDebug() << line;
} while(!line.isNull());
}
}
答
如果文件与
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
正确打开您正在检查
因此,只有在文件未正确打开的情况下,您的代码才会执行。使用
if (file.open(QIODevice::ReadOnly | QIODevice::Text)) {
“不工作”是什么意思? – 0x499602D2
QDebug不输出任何东西。 – user3183403
另外,为什么你的条件'if(!file.open(...))'?你正在检查打开是否失败,然后开始执行从文件读取。相反,只要执行'if(file.open(...))'。 – 0x499602D2