如何在Qt应用程序中打开文件?

如何在Qt应用程序中打开文件?,qt,Qt,我在QtGUI中编写了一个记事本,但是当我将一个文件与之关联并单击它时,会运行.exe,而不会打开该文件,因此我必须使用 QFileDialog::getSaveFileName( this,"Save As","", "Text Document (*.txt)\n All Files (*.*)") 当我们点击text.txt时,它会直接在记事本中打开文件。如何为我的应用程序创建相同的功能 备注:QDir::currentpa

我在QtGUI中编写了一个记事本,但是当我将一个文件与之关联并单击它时,会运行.exe,而不会打开该文件,因此我必须使用

QFileDialog::getSaveFileName(
                this,"Save As","",
                "Text Document (*.txt)\n All Files (*.*)")
当我们点击text.txt时,它会直接在记事本中打开文件。如何为我的应用程序创建相同的功能


备注:QDir::currentpath()返回我们单击的file.txtq(与其关联)的路径,但我无法返回其名称。

双击文件(与exe关联)时,其路径通过命令行参数传递给程序。您可以通过以下方式访问它们:

if (QApplication::arguments().size() > 1) {
    const QString filename = QApplication::arguments().at(1);
    // "filename" now contains path and name of the file to open.
}

另外,我不知道为什么要使用
QFileDialog::getSaveFileName()
。要调用“打开文件”对话框,需要使用
QDialog::getOpenFileName()
方法。

要打开的文件作为参数传递,请检查它