c++ - 尝试打开并读取 .txt 文件,但它会从原始文件中删除实际文本(Qt GUI C++

标签 c++ qt qwidget

我试图打开并读取一个 .txt 文件,然后在标签中显示其中的一行,但该行未显示,但所有内容都已从原始选定文件中删除。有什么想法吗?

{
    QString filename = QFileDialog::getOpenFileName(this,
                                                    tr("Open File"),
                                                    "/Users/kat/Documents/Programming 2/Assignment/Quizzes",
                                                    "All Files (*.*);;Text File (*.txt)");
    QFile file(filename);

    if(!file.open(QFile::WriteOnly | QFile::Text))
    {
        QMessageBox::warning(this, tr("File Not Open"),"File Cannot Be Opened");
    }

    QTextStream in(&file);
    QRegularExpression re("Name: ");
    QString title = in.readLine();
    title.remove(re);
    ui->label_4->setText(title);
    file.flush();
    file.close();```

最佳答案

您已经打开文件进行写入而不是读取 if(!file.open(QFile::WriteOnly | QFile::Text))。如果您需要读取文件,则不应执行 file.flush()

关于c++ - 尝试打开并读取 .txt 文件,但它会从原始文件中删除实际文本(Qt GUI C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58806550/

相关文章:

c++ - 您将如何使用二维来处理一维内存?

c++ - 如何检查一行中的 3 个节点是否相同 C++?

c++ - Qt圆角矩形,为什么角不一样?

c++ - 如何检测 QImage 是否具有动画效果?

c++ - 显示时如何调整 QPlainTextEdit 小部件的大小

c++ - 我在 C++ 中有一个 BrowserHelperObject(BHO),我需要在 i-frame 中阻止一些键盘控件 (Ctrl-o)

c++ - 将任何类成员函数作为参数传递

qt - Qt Quick 是为 C++ 应用程序构建现代 GUI 的方法吗?

c++ - 为什么 QGraphicsWidget 的选择边框在 QGraphicsScene 中不可见?

c++ - 根据宽度缩放 QWidget 高度