在Qt C++中读取和写入文件

Read and write files in Qt C++

本文关键字:文件 读取 Qt C++      更新时间:2023-10-16

我是Qt编程的新手。

我正在做一个由一个主屏幕和 3 个窗口组成的程序,它基于驾驶由并行端口控制的卡车无线电。

我的问题是在第二个窗口中,我输入了某些值,并存储在txt文件中(我检查并正确存储)。 问题是,当我转到第三个窗口时,该窗口旨在读取和打印生成的数据文件,不会出现,但直到我离开并返回程序。

虽然保存数据后,我关闭文件,然后打开它读取它,就像当时没有关闭,但只有当我退出程序时。

下面附加的程序文件。

链接!

非常感谢,对不起我的英语!

注意:不要忘记以用户权限输入以运行该程序(在 Ubuntu 中工作),因为它处理 PC 端口。

从这个qt的例子:

bool MainWindow::saveFile(const QString &fileName)
{
    QFile file(fileName);
    if (!file.open(QFile::WriteOnly | QFile::Text)) 
    {
            QMessageBox::warning(this, tr("Application"),
                          tr("Cannot write file %1:n%2.")
                          .arg(fileName)
                          .arg(file.errorString()));
        return false;
    }
    QTextStream out(&file);
#ifndef QT_NO_CURSOR
QApplication::setOverrideCursor(Qt::WaitCursor);
#endif
out << textEdit->toPlainText();
#ifndef QT_NO_CURSOR
QApplication::restoreOverrideCursor();
#endif
    setCurrentFile(fileName);
    statusBar()->showMessage(tr("File saved"), 2000);
    return true;
}

您可以定义它并定义一个向用户询问文件名的插槽(QFileDialog 是最快的方法),如果用户接受(不取消保存数据执行),则使用用户文件名调用此方法。你可以删除一些东西,即statusBar()->showMessage();如果您没有状态栏等...